Sim*_*mon 5 javascript jquery json google-translate cross-domain
尝试访问使用Google翻译的页面时出现此错误:
XMLHttpRequest无法加载 http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit。所请求的资源上没有“ Access-Control-Allow-Origin”标头。
http://localhost:8080因此,不允许访问来源' '。
我在SO上阅读了有关此问题的多篇 文章,但还没有找到一种方法可以使它与我们初始化Google Translate小工具的方式一起使用。
提出的解决方案包括将设置dataType为jsonp并将其添加Access-Control-Allow-Origin: *到的标头XMLHttpRequest。但是,我没有像其他帖子中那样进行AJAX调用,只是使用Google提供的脚本来初始化Google Translate元素:
<script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'en',
layout: google.translate.TranslateElement.InlineLayout.SIMPLE,
includedLanguages: 'fr,en'
}, 'hiddenGoogleTranslate');
</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
Run Code Online (Sandbox Code Playgroud)
如何dataType使用此初始化脚本定义或向标头添加内容?我是Java语言的新手,所以肯定有我缺少的东西。
谢谢!
或者,您可以在服务器上使用curl 或file_get_content() (webproxy) 来获取翻译后的文本。然后你可以使用ajax访问该url。如果您想将“访问控制允许来源”标头定义为*,您可以在您的服务器上执行此操作(而不是从js)。你的url可以跨域访问。
| 归档时间: |
|
| 查看次数: |
1023 次 |
| 最近记录: |