我有以下代码:
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客户端?
答案 0 :(得分:3)
据我了解,这是JSONP - JSON,它通过函数调用“填充”以允许跨域数据传输。我强烈怀疑如果您在网址上传入了不同的回调名称,您会看到其他名称在回复中返回。
(请注意,虽然我在谷歌工作,但这个答案不是Google以任何方式,形式或形式做出的“官方”回复。)
答案 1 :(得分:0)