谷歌词典api不返回纯json?

时间:2012-09-11 03:13:20

标签: json google-api

我有以下代码:

var json = new WebClient().DownloadString(string.Format(@"http://www.google.com/dictionary/json?callback=dict_api.callbacks.id100&q={0}&sl=en&tl=en", "bar"));

返回如下内容:

  

dict_api.callbacks.id100({ “查询”: “棒”, “sourceLanguage”: “EN”, “TARGETLANGUAGE”: “EN”, “初选”:[{ “类型”: “词条”,“术语“:[{” 类型 “:” 文本”, “文本”: “棒”,...

为什么它返回一个函数而不仅仅是json?我是否错误地使用了Web客户端?

2 个答案:

答案 0 :(得分:3)

据我了解,这是JSONP - JSON,它通过函数调用“填充”以允许跨域数据传输。我强烈怀疑如果您在网址上传入了不同的回调名称,您会看到其他名称在回复中返回。

(请注意,虽然我在谷歌工作,但这个答案不是Google以任何方式,形式或形式做出的“官方”回复。)

答案 1 :(得分:0)

您可能想要查看此内容:

json_decode for Google Dictionary API

他们实际上修改了生成的jsonp以获得json