用HTML请求测试Google API



我正在尝试测试一个简单的表单以重置gmail

中的用户密码
<form action="https://www.googleapis.com/admin/directory/v1/users"” method=”put” if-match="*">
  <input name="userKey" type="text" value="" />
  <input name="password" type="text" value="" />
  <input name="key" type="text" value="" />
  <input type="submit" />
</form> 

我有这个错误

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "required",
    "message": "Login Required",
    "locationType": "header",
    "location": "Authorization"
   }
  ],
  "code": 401,
  "message": "Login Required"
 }
}

我该如何在html中执行put请求?

您无法完全尝试做的事情有很多原因。虽然https://developers.google.com/admin-sdk/directory/v1/reference/reference/users/update谈论使用目录API更新帐户,并且此API使用urls and https Connections,这主要用于Back-back--最终系统使用相当标准的基于REST的API而不是人员直接使用Web浏览器。

您也许可以逃脱基于JavaScript的Ajax调用来执行此操作,但这可能不是一个好主意。

对于初学者,将需要对用户进行身份验证,并且需要授权使用https://www.googleapis.com/auth/admin.directory.user范围。由于具有此范围的令牌具有 lot 的电源(包括更改其他用户帐户的功能),因此这可能不是您想要给一个人的力量。如果是这样 - 他们将能够更改自己(或可能是任何人)的任何。

其次,作为使用此表格或Ajax完成的答复的一部分,您需要包括此auth令牌,而实际上,这实际上不是您只能以形式粘贴的东西。

相关的是,请求的主体必须采用JSON格式。据我所知,虽然有建议允许浏览器这样做,但目前没有浏览器支持一种编码类型的"应用程序/JSON"的表单。

您最好的选择是创建一个使用Google登录的简单应用程序服务器来验证用户,该服务器提供表单并进行检查以确保这是合理的请求。您可以在当时验证用户,让他们更改密码,但不能为他们提供其他任何内容。您将使用一个具有admin.directory.user角色的服务帐户,根据用户的消毒输入进行实际更改。

相关内容

  • 没有找到相关文章

最新更新