ajax - js解析返回的json - 如何从谷歌翻译得到和解析json的答案




jquery json取值 (2)

我想翻译Ajax的请求谷歌翻译如果我使用卷曲,它会像:

curl_init("http://translate.google.com/translate_a/t?client=t&text=hello&sl=en&tl=ru");

但我不能使用服务器端脚本与查询,因为他们将从相同的IP
但我不能使用JSONP请求,因为我不认为这是允许的。 这是服务器响应:

[[“привет”,“hello”,“privet”,“”]],[[“”,[“Алло”,“Здравствуйте。”]],[“имясуществительное”,[“приветствие”,“приветственный возглас“,”возгласудивления“]],[”глагол“,[”здороваться“,”звать“,”окликать“]],[”междометие“,[”привет“,”здравствуйте“,”алл“]]]中, “En” ,, [[ “привет”,[5],1,0,1000,0,1,0]],[[ “你好”,4 ,,, “”],[ “你好”,5 ,[[ “привет”,1000,1,0],[ “Здравствуй”,0,1,0],[ “Здравствуйте”,0,1,0],[ “你好”,0,1,0] ,[0,5]], “你好”]] ,,, [[ “EN”]],13]

而我不能加载内容到iframe

<iframe src="http://translate.google.com/translate_a/t?client=t&text=hello&sl=en&tl=ru"></iframe>

因为响应内容类型是“text / javascript”,浏览器下载文件

PS。 我不能解码与PHP函数json_decode()或与jquery.ajax的内容,因为响应json是腐败的。 你可以在这里测试http://json.parser.online.fr/

请给我一个建议


尝试:

http://translate.google.com/translate_a/t?client=p

如果客户端参数是't'以外的任何东西,它将返回有效的JSON数据。 当然,你总是可以把't'返回变量转换成一个有效的数组或者JSON,但是这很容易。


确保添加标题参数“User-Agent”=“Mozilla / 4.0”。 如果没有,Google会添加验证码





google-translate