我正在为域名(http://sälja.io)中包含瑞典语charachterä的网站设置API密钥,但它没有初始化recaptcha。
然后尝试使用等同网址http://xn--slja-loa.io的api密钥,该密钥在从http://xn--slja-loa.io但不是http://sälja.io到达网站时有效。
然后我找到了应该适用于所有域的安全令牌。它初始化了所有域上的重新接收,并且还在所有经过测试的域上工作,除了带有ä的域。 https://developers.google.com/recaptcha/docs/secure_token
有没有办法让它在域名中使用ä?
修改
由于http://xn--slja-loa.io的api-key在从http://sälja.io访问网站时从android开始工作,因此它可能是浏览器解释域的方式。例如。 firefox将http://sälja.io解释为域http://sälja.io,并且无法从谷歌服务器获得不允许域名ä的响应。 Android将http://sälja.io解释为http://xn--slja-loa.io,并且会收到回复,因为它不包含ä。有什么想法吗?有没有办法强制浏览器将http://sälja.io解释为http://xn--slja-loa.io?
EDIT2
可以在sälja.io/ test,178.62.187.163 / test和xn--slja-loa.io/test
上找到代码示例EDIT3
截至今天(2015年11月25日),似乎无法在域名中使用像ä这样的特殊字符来重新接收。由于aishwat singh在奖励的时间内帮助最多得出这个结论,他将获得奖励,但是当可以为这个问题提供解决方案时,将接受答案。
答案 0 :(得分:4)
我刚才尝试过,我可以为example-ä.se
生成密钥6Ld8VRETAAAAALRXFNxmjEeVzbg2y5vdWv7THwJz
将很快发布一个完整的工作示例
编辑1
上运行好吧,这不是一个完整的修复,因为我使用herokuapp.com作为域,所以示例-ä.herokuapp.com成为子域并且工作
(但是,当我之前尝试过它时,它也为example-ä.se
创建了一个键,但是在加密页上加载验证码时它会给invalid domain
,这是原始问题,我以为你无法生成密钥对于这个域名)
将尝试完整修复
编辑2
顺便说一下,您也可以指定域名ip,请查看discussion
对我来说,heroku免费帐户不提供域名IP,因此我很难对其进行测试
我也在阅读thread
如果我指定域列表只是它接受的com
。在您的情况下,只需将se
指定为域名并且它应该有效,谷歌不检查确切的URL它只是检查域
希望它有所帮助,也会考虑stoken
方法
答案 1 :(得分:-1)
你可以阅读这篇文章:
.....................