我使用python和==1.6.2来处理用户的Google,所有的东西都运行得很完美,没有任何bug,但是我没有收到Google (Google文档)的任何推送通知。“注册您的域名”成功完成。“创建通知通道”完成,通道对象返回给我。
我的代码:
try:
drive_service.files().watch(
fileId='CPw3cbyqkoC1QMK48R24-Z2CG9w',
body=dict(
id=str(uuid.uuid4()),
resourceId='CPw3cbyqkoC1QMK48R24-Z2CG9w',
type='web_hook',
address='https://my-domain-address/web_hook'
)
).execute()
except HttpError as err:
logger.exception('HttpError {}: content={}'.format(err.uri, err.content))响应:
{
u'resourceId': u'CPw3cbyqkoC1QMK48R24-Z2CG9w',
u'kind': u'api#channel',
u'expiration': u'1495448262000',
u'id': u'8837a4ad-98c0-4e89-8899-c07e12e3bffc',
u'resourceUri': u'https://www.googleapis.com/drive/v3/files/0B2lHB_g_GJY9RWx6UkRjWUFjSVU?acknowledgeAbuse=false&alt=json&supportsTeamDrives=false&alt=json'
}在此之后,当用户修改查看Google资源时,没有任何对https://my-domain-address/web_hook的请求。
你知道我做错了什么吗?
发布于 2017-05-22 12:49:39
日志消息链接到我在搜索解决方案时发现的问题:
64.233.172.141 - - [22/May/2017:09:11:10 +0000] "POST /web_hook HTTP/1.1" 403 807 "-" "APIs-Google; (+https://developers.google.com/webmasters/APIs-Google.html)"
64.233.172.143 - - [22/May/2017:09:11:12 +0000] "POST /web_hook HTTP/1.1" 403 807 "-" "APIs-Google; (+https://developers.google.com/webmasters/APIs-Google.html)"
64.233.172.143 - - [22/May/2017:09:11:13 +0000] "POST /web_hook HTTP/1.1" 403 807 "-" "APIs-Google; (+https://developers.google.com/webmasters/APIs-Google.html)"所以我收到了Google对我的web钩子的请求。
首先,我认为Nginx阻塞了它们,但是在我看到所有请求都是POST之后。
因此,我谈到了转发邮件请求的问题。另外,我使用Django并忘记禁用webhook的CSRF保护。这是我问题的解决办法。
如果能帮上忙我会很高兴的。
https://stackoverflow.com/questions/44110400
复制相似问题