Php 不带命令行的两条腿誓言请求
我想用php发出一个两条腿的oauth yql请求。 到目前为止: 但问题是,我不想查询命令行。。。。。我只想使用我得到的api键进行oauth,并直接使用我在yql中键入命令时得到的url 像这样:Php 不带命令行的两条腿誓言请求,php,oauth,yql,Php,Oauth,Yql,我想用php发出一个两条腿的oauth yql请求。 到目前为止: 但问题是,我不想查询命令行。。。。。我只想使用我得到的api键进行oauth,并直接使用我在yql中键入命令时得到的url 像这样: $url='http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20('+url_stocks+')&format=json&am
$url='http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20('+url_stocks+')&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys';
(我编辑了我想要的url)。请不要问我为什么不使用命令查询(说来话长)。如果能得到一些帮助,我会很高兴的。
谢谢 解决了它:
包括_once“oauth/library/OAuthStore.php”;
包括_once“oauth/library/OAuthRequester.php”
$key\u 1=“您的密钥”$秘密1=“你的秘密”
$ticks=“%22AAPL%22%2C%22MSFT%22”
$options=数组('consumer\u key'=>$key\u 1,'consumer\u secret'=>
$1);OAuthStore::实例(“2Leg”,$options)
$url=
"http://query.yahooapis.com/v1/public/yql?q=select%20*%20来自%20yahoo.finance.quotes%20,其中%20symbol%20in%20(“$ticks”)&格式=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys”;
//这是请求$method=“GET”//的URL你也可以使用
POST而不是$params=null
试一试{
//获取我们要发出的请求的请求对象
$request=新的OAuthRequester($url、$method、$params);
//签署请求,执行curl请求并返回结果,
//在发生错误时引发OAutheException2异常
//$result是一个数组,其形式为:array('code'=>int,'headers'=>array(),'body'=>string)
$result=$request->doRequest()
}捕获(OAutheException2$e){}
什么阻止了你?你试过什么?什么不起作用?你做了什么研究来解决这个问题?答:我不知道如何按请求发送url,但我得到了一个有价值的答案。我做了什么尝试?答:刚刚成功使用javascript,但需要了解php……有什么不起作用?不知道该怎么做。。。研究?答:yql文档和google。但只是获取命令行示例。
$url='http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20('+url_stocks+')&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys';
$response = $result['body'];
$resp_array=json_decode($response,TRUE);
echo $resp_array['query']['results']['quote'][1]['symbol']; // MSFT