Java googledrivewebhook配置
我正在阅读google drive文档,但有点不清楚: 我必须为应用程序中的每个用户设置web钩子,还是只设置一次? java中有这种配置的例子吗? 如何通过光标检索用户的更改? 以下是我如何让用户对我的应用程序进行身份验证:Java googledrivewebhook配置,java,google-drive-api,webhooks,Java,Google Drive Api,Webhooks,我正在阅读google drive文档,但有点不清楚: 我必须为应用程序中的每个用户设置web钩子,还是只设置一次? java中有这种配置的例子吗? 如何通过光标检索用户的更改? 以下是我如何让用户对我的应用程序进行身份验证: @GET @Path("/start") public void start(@Context HttpServletRequest request, @Context HttpServletResponse response) throws IOExceptio
@GET
@Path("/start")
public void start(@Context HttpServletRequest request, @Context HttpServletResponse response) throws IOException {
String url = initFlow().newAuthorizationUrl().setRedirectUri("http://localhost:8080/GDriveRest/app/gdrive/finish").build();
response.sendRedirect(url);
}
@GET
@Path("/finish")
public void finish(@Context HttpServletRequest request, @Context HttpServletResponse response) throws IOException {
AuthorizationCodeFlow flow = initFlow();
flow.newTokenRequest(request.getParameter("code"));
response.sendRedirect("http://m.memegen.com/1yx6o5.jpg?"+request.getParameter("code")+"&id="+flow.getClientId());
}
private AuthorizationCodeFlow initFlow() throws IOException {
InputStream in = GDrive.class.getResourceAsStream("/client_secret.json");
GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(JSON_FACTORY, new InputStreamReader(in));
return new GoogleAuthorizationCodeFlow.Builder(new NetHttpTransport(),
JacksonFactory.getDefaultInstance(),
clientSecrets, SCOPES).setAccessType("offline").build();
}
如何设置webhooks?您可以查看如何创建webhooks。Webhook可以使用不同的内容类型交付:
application/json内容类型将直接将json有效负载作为文章的主体交付。
application/x-www-form-urlencoded内容类型将以名为payload的表单参数的形式发送JSON负载。
关于如何为用户检索更改,可以使用在资源更改时通知应用程序的。要请求推送通知,您需要为要监视的每个资源设置通知通道。设置通知通道后,当任何监视的资源发生更改时,驱动器API将通知应用程序
使用该方法订阅更改日志的更新。通知不包含有关更改的详细信息。相反,它们表示有新的更改可用。要检索实际更改,请按照中所述轮询更改提要
希望这有帮助 我已成功创建了一个频道,但现在出现以下问题: