通过对 Google 电子邮件设置 API 的 HTTP 请求进行身份验证
Authenticating via HTTP request to Google Email Settings API
一直在尝试通过 ruby 访问 google 电子邮件设置 api。
到目前为止,我可以使用 ruby google api 客户端获取访问令牌,
#<Google::APIClient:0x007f08b89dabf8
@authorization=
#<Signet::OAuth2::Client:0x007f08b72b6990
@access_token=
"hfiponawbvpuqwbr[igi[qwrjgip[nwq[rbgqwbr[ogn[iwrqjpgjowpqrjpogjqwr",
@additional_parameters={},....etc
但是,当我尝试使用它来访问电子邮件设置时 api:
GET https://apps-apis.google.com/a/feeds/emailsettings/2.0/mydomain.com/muggins/filter?access_token=<access_token>
我明白了
需要授权
需要授权
错误 401
作为回应。
已遵循此示例(取自 the drive docs 并对驱动器使用完全相同的方法并且有效。
但是没有示例 in the email settings docs 并且相同的方法不起作用(假定它拒绝访问令牌)。
有什么想法吗?感觉我已经很接近了,走到这一步已经是一种真正的皇家痛苦......
好的。由于缺少文档,因此很难解决这个问题。
问题是令牌需要作为 header 传递,并在其前面附加字符串 "Bearer "。
所以,这样的事情(用于身份验证)
url = "https://apps-apis.google.com/a/feeds/emailsettings/2.0/mydomain.com/muggins/"
HTTParty.get(url+"sendas", header: {"Authorization" => "Bearer #{your_token}"})
将 return 用户的 sendas 地址列表。
如果你想post...
url = "https://apps-apis.google.com/a/feeds/emailsettings/2.0/mydomain.com/muggins/"
result = HTTParty.post(
url+"sendas",
header:{
"Authorization" => "Bearer #{your_token}",
"Content-Type" => "application/atom+xml"
}
)
一直在尝试通过 ruby 访问 google 电子邮件设置 api。
到目前为止,我可以使用 ruby google api 客户端获取访问令牌,
#<Google::APIClient:0x007f08b89dabf8
@authorization=
#<Signet::OAuth2::Client:0x007f08b72b6990
@access_token=
"hfiponawbvpuqwbr[igi[qwrjgip[nwq[rbgqwbr[ogn[iwrqjpgjowpqrjpogjqwr",
@additional_parameters={},....etc
但是,当我尝试使用它来访问电子邮件设置时 api:
GET https://apps-apis.google.com/a/feeds/emailsettings/2.0/mydomain.com/muggins/filter?access_token=<access_token>
我明白了 需要授权
需要授权
错误 401
作为回应。已遵循此示例(取自 the drive docs 并对驱动器使用完全相同的方法并且有效。 但是没有示例 in the email settings docs 并且相同的方法不起作用(假定它拒绝访问令牌)。
有什么想法吗?感觉我已经很接近了,走到这一步已经是一种真正的皇家痛苦......
好的。由于缺少文档,因此很难解决这个问题。
问题是令牌需要作为 header 传递,并在其前面附加字符串 "Bearer "。
所以,这样的事情(用于身份验证)
url = "https://apps-apis.google.com/a/feeds/emailsettings/2.0/mydomain.com/muggins/"
HTTParty.get(url+"sendas", header: {"Authorization" => "Bearer #{your_token}"})
将 return 用户的 sendas 地址列表。
如果你想post...
url = "https://apps-apis.google.com/a/feeds/emailsettings/2.0/mydomain.com/muggins/"
result = HTTParty.post(
url+"sendas",
header:{
"Authorization" => "Bearer #{your_token}",
"Content-Type" => "application/atom+xml"
}
)