为什么我不能通过php发送更新令牌的请求?

问题描述 投票:0回答:1
$ret = file_get_contents('https://oauth2.googleapis.com/token', false, stream_context_create([
    'http' => [
        'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
        'method'  => 'POST',
        'protocol_version' => 1.1,
        'content' => http_build_query([
            'client_id' => $client_id,
            'client_secret' => $client_secret,
            'refresh_token' => $refresh_token,
            'grant_type' => $refresh_token
        ])
    ]
]));

运行脚本后,我看到400错误的请求错误。我做错了什么?

php oauth-2.0 google-api google-oauth2
1个回答
0
投票

发件人:https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400

超文本传输​​协议(HTTP)400错误的请求响应状态代码指示服务器无法或将不处理请求由于某些东西被认为是客户端错误(例如,格式错误的请求语法,无效的请求消息框架或欺骗性请求路由)。

这意味着您在请求中发送的参数很可能出了点问题。可能不是这样,但是尝试删除标头参数中的\r\n,它们对我来说似乎很奇怪。

© www.soinside.com 2019 - 2024. All rights reserved.