获取代码名称中带有 ^ 的股票的 API 信息
Fetch API information for stocks with ^ in the ticker name
我需要一些帮助来调用 AlphaVantage 股票市场 API。在大多数情况下,它工作得很好,但当涉及到从股票代码中有 ^
符号的股票请求数据时,出现了问题。
我收到 API 响应代码:
var url = "https://www.alphavantage.co/query?function=TIME_SERIES_DAILY_ADJUSTED&symbol=^vvix&apikey=<KEY>",
response = UrlFetchApp.fetch(url),
json = JSON.parse(response);
Logger.log(json);
并得到这个错误:
Invalid argument: https://www.alphavantage.co/query?function=TIME_SERIES_DAILY_ADJUSTED&
所请求股票的股票代码是^vvix
。如果我用 vix
(另一个有效的代码)替换符号,代码就可以工作。因此,我假设错误与 ^
符号有关,但 ^
符号是股票代码的一部分。
如果我使用
=IMPORTDATA("https://www.alphavantage.co/query?function=TIME_SERIES_DAILY_ADJUSTED&symbol=^vvix&apikey=K9D4PO855OG03KNM")
作为 Google Sheets 公式,^
没有问题,数据已检索
哪里不一样了?
^
是 JavaScript 字符串中的无效字符吗?
知道有什么问题吗?
插入符号 ("^") 不是有效的 URL 字符,如果您遵循 IETF 的建议,则必须使用百分比编码。这是 RFC1738
中定义的 "unsafe" 字符之一
使用 %5E
代替 ^
。
更一般地说,用以下符号包裹符号:
encodeURI(symbol)
我需要一些帮助来调用 AlphaVantage 股票市场 API。在大多数情况下,它工作得很好,但当涉及到从股票代码中有 ^
符号的股票请求数据时,出现了问题。
我收到 API 响应代码:
var url = "https://www.alphavantage.co/query?function=TIME_SERIES_DAILY_ADJUSTED&symbol=^vvix&apikey=<KEY>",
response = UrlFetchApp.fetch(url),
json = JSON.parse(response);
Logger.log(json);
并得到这个错误:
Invalid argument: https://www.alphavantage.co/query?function=TIME_SERIES_DAILY_ADJUSTED&
所请求股票的股票代码是^vvix
。如果我用 vix
(另一个有效的代码)替换符号,代码就可以工作。因此,我假设错误与 ^
符号有关,但 ^
符号是股票代码的一部分。
如果我使用
=IMPORTDATA("https://www.alphavantage.co/query?function=TIME_SERIES_DAILY_ADJUSTED&symbol=^vvix&apikey=K9D4PO855OG03KNM")
作为 Google Sheets 公式,^
没有问题,数据已检索
哪里不一样了?
^
是 JavaScript 字符串中的无效字符吗?
知道有什么问题吗?
插入符号 ("^") 不是有效的 URL 字符,如果您遵循 IETF 的建议,则必须使用百分比编码。这是 RFC1738
中定义的 "unsafe" 字符之一使用 %5E
代替 ^
。
更一般地说,用以下符号包裹符号:
encodeURI(symbol)