如何将OAuth标头包含在异步提取请求中?

时间:2012-12-06 03:32:47

标签: java google-app-engine asynchronous oauth google-apps-script

我想在我的Google引擎应用程序中使用异步请求来触发google应用程序脚本(部署为Web应用程序):

URLFetchService fetcher = URLFetchServiceFactory.getURLFetchService();
Future future = fetcher.fetchAsync(req);
HTTPResponse response = (HTTPResponse) future.get();

但是fetchAsync方法只接受网址或 com.google.appengine.api.urlfetch.HTTPRequest 它没有提供更多选项:https://developers.google.com/appengine/docs/java/javadoc/com/google/appengine/api/urlfetch/HTTPRequest

我不知道如何将OAuth安全标头添加到异步提取服务中。我们使用标准的HttpRequest方法构建授权请求。

包含OAuth的示例HttpRequest:

 HttpRequest contactrequest = rf.buildGetRequest(shortenEndpoint);
    GoogleHeaders headers = new GoogleHeaders();
    headers.setContentType("application/x-www-form-urlencoded");
    headers.setAuthorization("OAuth " + creds.getAccessToken());
    contactrequest.setHeaders(headers);
    contactrequest.getHeaders().set("GData-Version", "3.0");

有没有办法发送异步OAuth授权请求?

1 个答案:

答案 0 :(得分:0)

答案:无法在fetchAsync服务中指定OAuth标头。替代方案是使用queque任务。

现在出现了一个新问题:如何以编程方式调用Google app脚本时传递“用户上下文”:Invoking Google App script programatically and user identity?