您的位置:首页 > 编程语言 > PHP开发

关于PHP获取私有属性(调用阿里云sdk,返回带私有属性的对象)

2017-03-11 13:16 330 查看
昨天调用阿里云的滑动验证功能的sdk,官方文档说是返回json数据,但是一打印发现反回的居然是带有私有属性的对象,如图所示
HttpResponse Object
(
[body:HttpResponse:private] => {
"RequestId":"A7847F5F-959A-442F-9D4F-D9A823857128","AssumedRoleUser":{"AssumedRoleId":"381320982304412425:704036879","Arn":"acs:ram::20411481:role/bfvideo/704036879"},
"Credentials":{"AccessKeySecret":"BDsQMcruMnuP9a1qDJYYGUCPorjwyhBTJ7bUrF7vLoua",
"AccessKeyId":"STS.Bg5E16x7SzBwg5yw13Wj4W5tW","Expiration":"2016-12-22T06:14:01Z",
"SecurityToken":"CAIS8AF1q6Ft5B2yfSjIo6SADouClehyzYCcZRPIkzFmW+UYuPDftTz2IHBNf3NoCOActfwzmGlS6vwflqAsE8MdHhKUMpoocQmXMPniMeT7oMWQweEut//MQBqpaXPS2MvVfJ+5Lrf0ceusbFbpjzJ6xaCAGxypQ12iN+/x6/h8cs9FdxKjcD9LPtBSK3EVyqkgOGDWKOymPzPzn2PUFzAIgAdnjn5l4qnNqa/1qDi+1gWmk7ZJ993LT8L6P5U2DvBWSMyo2eF6TK3F3RNL5gJCnKUM1/wdom2f74HHWAENv0zcb7CJ6LJlIhF4aqU9Cx/EGZkagAFmPDKrgHtOyVvo4LQk/dVWyukdXLbSfrnHFSd0vY6RQMLdujjvG1QPH4x7Yw1XemtVIepth51kZbUtgVIKN8TkGz/MlgGCM7iEJg5dwVdenn2b7XEmUwKs8rw3shXeAIydSFfiOqteruPzqBkR3R02jF/Btagf4la4HbuMSd8FMg=="}
}
[status:HttpResponse:private] => 200
)

然后我就开始调试,找到了curl函数,发现其中一个设置curl_setopt($ch, CURLOPT_RETURNTRANSFER,
true);查看PHP官方文档,对其解释为将在启用 
CURLOPT_RETURNTRANSFER
 时,返回原生的(Raw)输出。 

因此,直接屏蔽此项设置,即可返回json格式数据。改动此目录下,aliyun-openapi-php-sdk-masteraliyun-openapi-php-sdk-masteraliyun-php-sdk-coreHttp,的HttpHelper.php,大概37行,删除或者屏蔽curl_setopt($ch,
CURLOPT_RETURNTRANSFER, true);即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐