JavaScript google音译API并不是通过https提供的。I<>I混合内容错误。它在http网站上工作,但不使用https。我尝试以以下所有方式调用API。
<script type="text/javascript" src="https://google.com/jsapi">
<script type="text/javascript" src="http://google.com/jsapi">
<script type="text/javascript" src="//google.com/jsapi">
<script type="text/javascript" src="//www.google.com/jsapi">错误:
混合内容:在'https://extranuclear-freque.000webhostapp.com/lang.html‘处的页面是通过HTTPS加载的,但是请求一个不安全的脚本'2j46jfkrs’。此请求已被阻止;内容必须通过HTTPS送达。
请帮帮我。谢谢
<pre>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script type="text/javascript" src="https://www.google.com/jsapi">
</script>
<script type="text/javascript">
google.load("elements", "1", {
packages: "transliteration"
});
function onLoad() {
var options = {
sourceLanguage:
google.elements.transliteration.LanguageCode.ENGLISH,
destinationLanguage:
[google.elements.transliteration.LanguageCode.BENGALI],
shortcutKey: 'ctrl+g',
transliterationEnabled: true
};
var control =
new google.elements.transliteration.TransliterationControl(options);
control.makeTransliteratable(['transliterateTextarea']);
}
google.setOnLoadCallback(onLoad);
</script>
</head>
<body>
<textarea id="transliterateTextarea" style="width:600px;height:200px"></textarea>
</body>
</html>
</pre>
发布于 2018-09-06 06:51:31
我找到了纠正上述错误的解决方案,您只需在上传服务器..if时粘贴下面的元标签就可以了,请告诉我。
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
发布于 2017-10-16 07:36:42
本地保存此(https://www.google.com/uds/api/elements/1.0/7ded0ef8ee68924d96a6f6b19df266a8/transliteration.I.js)文件
查找“qi=”http://www.google.com,然后将其更改为qi="https://www.google.com“
看起来不错
这是对“尼廷·戈亚尔”的prev回答的描述。
发布于 2017-10-12 15:47:08
我对这个问题进行了研究,发现谷歌在translationI.js中占据了核心地位。
要解决此问题,可以将该文件下载到计算机上并上载到您自己的服务器上,并将http://google.com更改为https://google.com,以解决您的问题。
https://stackoverflow.com/questions/44667348
复制相似问题