函数计算中,通过java,异步调用貌似有问题?
通过java调用函数,函数是zip打包oss内容,url地址是:https://next.api.aliyun.com/api/FC/2023-03-30/InvokeFunction?tab=DEMO&lang=JAVAASYNC&sdkStyle=dara¶ms={%22x-fc-invocation-type%22:%22Async%22,%22x-fc-log-type%22:%22Tail%22,%22qualifier%22:%22LATEST%22,%22functionName%22:%22zip-oss-func%22,%22body%22:%22598ec259-d222-4c09-a2a9-86cb649d0552%22}
楼主你好,阿里云函数计算中,通过Java进行异步调用可以参考以下代码示例:
import com.aliyun.fc.client.FunctionComputeClient;
import com.aliyun.fc.common.InvokeFunctionRequest;
import com.aliyun.fc.common.InvokeFunctionResponse;
import com.aliyun.fc.common.ServiceException;
public class AsyncFunctionInvocation {
public static void main(String[] args) {
String endpoint = "<函数计算服务Endpoint>"; // 函数计算服务的Endpoint
String accessKeyId = "<访问密钥AccessKey ID>"; // 阿里云访问密钥的AccessKey ID
String accessKeySecret = "<访问密钥AccessKey Secret>"; // 阿里云访问密钥的AccessKey Secret
String qualifier = "LATEST"; // 函数版本或别名,默认为LATEST
String functionName = "zip-oss-func"; // 函数名称
String body = "598ec259-d222-4c09-a2a9-86cb649d0552"; // 调用函数的请求体
FunctionComputeClient client = new FunctionComputeClient(endpoint, accessKeyId, accessKeySecret);
InvokeFunctionRequest request = new InvokeFunctionRequest();
request.setFunctionName(functionName);
request.setQualifier(qualifier);
request.setInvocationType("Async"); // 设置异步调用
request.setPayload(body);
try {
InvokeFunctionResponse response = client.invokeFunction(request);
System.out.println("Invocation ID: " + response.getRequestId());
} catch (ServiceException e) {
e.printStackTrace();
}
client.shutdown(); // 关闭客户端连接
}
}
请在代码中填写正确的Endpoint、AccessKey ID、AccessKey Secret、函数名称和请求体。通过设置setInvocationType("Async")
来指定异步调用。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。