/// <summary>
        /// 异步执行函数
        /// </summary>
        public static void InvokeFunctionAsync(FunctionGraphClient client)
        {
            AsyncInvokeFunctionRequest req = new AsyncInvokeFunctionRequest
            {
                FunctionUrn = "urn:fss:cn-north-7:46b6f338fc3445b8846c71dfb1fbd9e8:nction:CsharpSdkTest:csharpSdkTest",
                Body        = new Dictionary <string, object>
                {
                    { "k", "v" }
                }
            };

            try
            {
                AsyncInvokeFunctionResponse resp = client.AsyncInvokeFunction(req);
                Console.WriteLine("InvokeFunctionAsync Body=" + JsonConvert.SerializeObject(resp));
                Console.WriteLine("InvokeFunctionAsync StatusCode=" + resp.HttpStatusCode);
            }
            catch (ClientRequestException e)
            {
                Console.WriteLine(e.HttpStatusCode);
                Console.WriteLine(e.ErrorCode);
                Console.WriteLine(e.ErrorMsg);
            }
            catch (ConnectionException e)
            {
                Console.WriteLine(e.ErrorMessage);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 异步执行函数。
        /// </summary>
        public async Task <AsyncInvokeFunctionResponse> AsyncInvokeFunctionAsync(AsyncInvokeFunctionRequest asyncInvokeFunctionRequest)
        {
            Dictionary <string, string> urlParam = new Dictionary <string, string>();

            urlParam.Add("function_urn", asyncInvokeFunctionRequest.FunctionUrn.ToString());
            string              urlPath  = HttpUtils.AddUrlPath("/v2/{project_id}/fgs/functions/{function_urn}/invocations-async", urlParam);
            SdkRequest          request  = HttpUtils.InitSdkRequest(urlPath, "application/json", asyncInvokeFunctionRequest);
            HttpResponseMessage response = await DoHttpRequestAsync("POST", request);

            return(JsonUtils.DeSerialize <AsyncInvokeFunctionResponse>(response));
        }