php - Guzzle 问题缺少输入秘密和缺少输入响应
问题描述
我正在使用 Guzzle 6.5.0 和 Laravel 6.7.0 通过 Guzzle 验证 Google reCaptcha 时,似乎请求正文 /form_params
不包含在 POST 参数中。下面是 PHPUnit 8.5.0 输出...
object(GuzzleHttp\Psr7\Request)#1179 (7) {
["method":"GuzzleHttp\Psr7\Request":private]=>
string(4) "POST"
["requestTarget":"GuzzleHttp\Psr7\Request":private]=>
NULL
["uri":"GuzzleHttp\Psr7\Request":private]=>
object(GuzzleHttp\Psr7\Uri)#1180 (7) {
["scheme":"GuzzleHttp\Psr7\Uri":private]=>
string(5) "https"
["userInfo":"GuzzleHttp\Psr7\Uri":private]=>
string(0) ""
["host":"GuzzleHttp\Psr7\Uri":private]=>
string(14) "www.google.com"
["port":"GuzzleHttp\Psr7\Uri":private]=>
NULL
["path":"GuzzleHttp\Psr7\Uri":private]=>
string(25) "/recaptcha/api/siteverify"
["query":"GuzzleHttp\Psr7\Uri":private]=>
string(0) ""
["fragment":"GuzzleHttp\Psr7\Uri":private]=>
string(0) ""
}
["headers":"GuzzleHttp\Psr7\Request":private]=>
array(3) {
["Host"]=>
array(1) {
[0]=>
string(14) "www.google.com"
}
["headers"]=>
array(1) {
["Content-Type"]=>
string(33) "application/x-www-form-urlencoded"
}
["form_params"]=>
array(2) {
["secret"]=>
string(40) "6LeIxAcTAAAAAGG-vFI1TnRWxMZNFuojJ4WifJWe"
["response"]=>
string(3) "123"
}
}
["headerNames":"GuzzleHttp\Psr7\Request":private]=>
array(3) {
["headers"]=>
string(7) "headers"
["form_params"]=>
string(11) "form_params"
["host"]=>
string(4) "Host"
}
["protocol":"GuzzleHttp\Psr7\Request":private]=>
string(3) "1.1"
["stream":"GuzzleHttp\Psr7\Request":private]=>
object(GuzzleHttp\Psr7\Stream)#1182 (7) {
["stream":"GuzzleHttp\Psr7\Stream":private]=>
resource(609) of type (stream)
["size":"GuzzleHttp\Psr7\Stream":private]=>
int(0)
["seekable":"GuzzleHttp\Psr7\Stream":private]=>
bool(true)
["readable":"GuzzleHttp\Psr7\Stream":private]=>
bool(true)
["writable":"GuzzleHttp\Psr7\Stream":private]=>
bool(true)
["uri":"GuzzleHttp\Psr7\Stream":private]=>
string(10) "php://temp"
["customMetadata":"GuzzleHttp\Psr7\Stream":private]=>
array(0) {
}
}
标题Content-Type
是手动设置的。在 Laravel 中,我可以访问密钥和 URL,所以这不是问题。特别是因为请求被发送到正确的 URL。任何帮助将不胜感激。
解决方案
推荐阅读
- android - RecyclerView GridLayoutManager 项目装饰占用测量空间?
- opengl-es-2.0 - 如何在金属中禁用深度测试但启用更新深度纹理(如 glDepthMask(GL_TRUE))?
- python - 如何在循环中找到包含 2 个标签的块?
- javascript - 如何解决Outlook中自定义表格标签不兼容问题
- email - 从电子邮件链接更新日历
- java - 如何在 android 通话期间以编程方式拨打 #1?
- java - println() 与 Printwriter 对象不写入文件
- excel - Power Query Table.Group List.Sum(两列)
- c# - 如果计时器自行启动,过去运行的代码是否会被垃圾收集?
- google-cloud-platform - 如何在 Google Cloud Platform 中使用 python3.5 制作虚拟机实例