使谷歌回收工作与域名

时间:2015-11-15 19:19:08

标签: javascript cross-domain recaptcha

我正在为域名(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在奖励的时间内帮助最多得出这个结论,他将获得奖励,但是当可以为这个问题提供解决方案时,将接受答案。

2 个答案:

答案 0 :(得分:4)

我刚才尝试过,我可以为example-ä.se 生成密钥6Ld8VRETAAAAALRXFNxmjEeVzbg2y5vdWv7THwJz

将很快发布一个完整的工作示例

编辑1

这是代码的git repo,同样在heroku

上运行

好吧,这不是一个完整的修复,因为我使用herokuapp.com作为域,所以示例-ä.herokuapp.com成为子域并且工作

(但是,当我之前尝试过它时,它也为example-ä.se创建了一个键,但是在加密页上加载验证码时它会给invalid domain,这是原始问题,我以为你无法生成密钥对于这个域名)

将尝试完整修复

编辑2

顺便说一下,您也可以指定域名ip,请查看discussion

对我来说,heroku免费帐户不提供域名IP,因此我很难对其进行测试

我也在阅读thread

如果我指定域列表只是它接受的com。在您的情况下,只需将se指定为域名并且它应该有效,谷歌不检查确切的URL它只是检查域

domain description

希望它有所帮助,也会考虑stoken方法

答案 1 :(得分:-1)