【问题标题】:YQL Finance API URL ConstructionYQL金融API URL构建
【发布时间】:2015-04-10 14:16:10
【问题描述】:

我目前正在尝试从 Yahoo Finance API (YQL) 为我正在处理的项目请求一些市场报价,但在构建查询 URL 时遇到了一些问题。

如果我转到 YQL 控制台并为 Microsoft 请求报价,它会返回以下 URL:

https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quote%20where%20symbol%20in%20(%22MSFT%22)&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=

如果我将它直接放入我的代码并使用此 URL 运行我的查询,它工作正常,我可以获取我想要的数据。但是,我希望能够构建自己的查询 url,这样我就可以选择要获取哪些股票的信息,而无需从 YQL 控制台复制链接。

现在,当我尝试构建自己的 URL(按照网站上的 YQL 示例)时,我遇到了问题;我的 url 没有像控制台那样对自己进行编码,我无法取回任何信息。

这是我用来构建自己的 URL 的代码:

$yql_base_url = "https://query.yahooapis.com/v1/public/yql?q=";
$yql_query = "select * from yahoo.finance.quote where symbol in ('MSFT')";
$yql_query_url = $yql_base_url . urlencode($yql_query);
$yql_query_url .= "&format=json&diagnostics=true";
$yql_query_url .= "&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=";

现在,当我将此 URL 与从 YQL 控制台复制的 URL 一起打印出来时,很容易看出它们根本不一样,这很可能是它不起作用的原因。

为了比较, 我的网址:

https://query.yahooapis.com/v1/public/yql?q=select+%2A+from+yahoo.finance.quote+where+symbol+in+%28%27MSFT%27%29&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=

YQL 控制台网址:

    https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quote%20where%20symbol%20in%20(%22MSFT%22)&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=

任何曾经使用过它的人,或者可以看到我可能犯的任何错误的人都可以提供一些帮助,将不胜感激。

我正在关注的 YQL 教程: https://developer.yahoo.com/yql/guide/yql-code-examples.html#yql_php

【问题讨论】:

    标签: php json url yql


    【解决方案1】:

    你可以试试rawurlencode。但是,您发布的网址在我的浏览器中运行良好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-27
      • 2017-10-01
      • 2018-04-19
      • 1970-01-01
      相关资源
      最近更新 更多