我在Yandex注册并获得了Translate API密钥。然而,当我尝试用以下代码进行翻译时:
<CFSET Key = "trnsl.1.1.2014091...........................">
<CFSET lang="en-de">
<CFSET text="Hallo World">
<CFHTTP URL="https://translate.yandex.net/api/v1.5/tr.json/translate?Key=#Key#&lang=#lang#&text=#text#" METHOD = "GET">
</CFHTTP>
<CFOUTPUT>#CFHTTP.FileContent#</CFOUTPUT>
我得到一个401错误"API密钥无效"。我也尝试过使用Javascript/CFML,但得到了类似的结果。我检查了钥匙,它是最新的。
有人做过类似的工作吗?
?Key=#Key#&lang=#lang#&text=#text#
这听起来有点疯狂,但是。。我认为原因是url参数名称区分大小写。由于您使用的是?Key=
而不是?key
(所有小写),因此接收端认为您根本没有提供API密钥。因此出现了错误。(尽管"密钥丢失或无效"会更准确一点)。
尝试使用?key=
(全部小写),它应该可以工作。