我将Requests用于http请求:
我还将其打包为util函数:
function http_util($url, $params, $add_headers = null, $base_url = null ){
$headers = array('Accept'=>'application/json');
if($add_headers){
$headers = array_merge($headers, $add_headers);
}
if($base_url) {
$url = $base_url . $url;
}
$request = Requests::post($url, $headers, $params);
return $request;
}
但我发现了例如curl示例:
curl -X POST -d "grant_type=password&username=<user_name>&password=<password>" -u"<client_id>:<client_secret>" http://localhost:8000/o/token/
如果curl示例转换为使用我的http_util,如何使用?我不确定我的http_util是否将执行更多优化操作。以及如何使用http_util请求curl示例?
答案 0 :(得分:1)
您不能按原样使用它,您需要按照文档中的说明添加$options
参数:http://requests.ryanmccue.info/docs/authentication.html
“ util”功能只是设置内容Accept
头。不值得为此编写函数。
$result = Requests::post('http://localhost:8000/o/token' [
// headers
'Accept' => 'application/json'
], [
// data
'grant_type' => 'password',
'username' => '<user_name>',
'password' => '<password>',
], [
// options
'auth' => new Requests_Auth_Basic(['<client_id>', '<client_secret>'])
]);