如何在 samsung gear s2 上启用 http 请求/互联网访问
How to enable http request / internet acces on samsung gear s2
我在 gear s2 (javascript) 的 Web 应用程序上通过切换按钮发送 http 请求:
( function () {
var led001Button = document.getElementById("Led001"),
led002Button = document.getElementById("Led002");
function httpReq(theUrl){
var xmlhttp = null;
xmlhttp = new XMLHttpRequest();
// xmlhttp.onreadystatechange = function(){
// if (xmlhttp.readyState == xmlhttp.DONE){
// alert(xmlhttp.responseText);
// }
// else{
// alert(xmlhttp.statusText);
// }
// };
// xmlhttp.onerror = function(e){
// alert("onerror: " + xmlhttp.statusText);
// };
xmlhttp.open("GET", theUrl);
xmlhttp.send();
}
function checkToggle(name){
//make box2 = box1 when checked
var checkbox = document.getElementById(name);
if (checkbox.checked === true){
httpReq('http://school.thomashuster.nl/WebServer/edit.php?name='+name+'&value=1');
// console.log("set "+name+" ON");
}else{
httpReq('http://school.thomashuster.nl/WebServer/edit.php?name='+name+'&value=0');
// console.log("set "+name+" OFF");
}
}
if (led001Button) {
led001Button.addEventListener("change", function(){
checkToggle("Led001");
});
}
if (led002Button) {
console.log('test');
led002Button.addEventListener("change", function(){
checkToggle("Led002");
});
}
} () );
当我在 gear s2 网络模拟器上模拟这个时,它工作得很好。
但是当我在 gear s2 本身上安装它时,我的网络服务器没有收到任何请求。我在 config.xml 文件中授予我的应用程序互联网权限和对我的网络服务器的访问权限:
<access origin="https://www.thomashuster.nl" subdomains="true"></access>
<tizen:privilege name="http://tizen.org/privilege/internet"/>
但没有成功。谁能告诉我我忘记了什么?谢谢!
您确定您的代码没有从任何其他域访问吗?
如果是从其他域访问,则需要将config.xml中的访问源修改为
<access origin="*" subdomains="true"></access>
或
<access origin="*" subdomains="true"/>
我在 gear s2 (javascript) 的 Web 应用程序上通过切换按钮发送 http 请求:
( function () {
var led001Button = document.getElementById("Led001"),
led002Button = document.getElementById("Led002");
function httpReq(theUrl){
var xmlhttp = null;
xmlhttp = new XMLHttpRequest();
// xmlhttp.onreadystatechange = function(){
// if (xmlhttp.readyState == xmlhttp.DONE){
// alert(xmlhttp.responseText);
// }
// else{
// alert(xmlhttp.statusText);
// }
// };
// xmlhttp.onerror = function(e){
// alert("onerror: " + xmlhttp.statusText);
// };
xmlhttp.open("GET", theUrl);
xmlhttp.send();
}
function checkToggle(name){
//make box2 = box1 when checked
var checkbox = document.getElementById(name);
if (checkbox.checked === true){
httpReq('http://school.thomashuster.nl/WebServer/edit.php?name='+name+'&value=1');
// console.log("set "+name+" ON");
}else{
httpReq('http://school.thomashuster.nl/WebServer/edit.php?name='+name+'&value=0');
// console.log("set "+name+" OFF");
}
}
if (led001Button) {
led001Button.addEventListener("change", function(){
checkToggle("Led001");
});
}
if (led002Button) {
console.log('test');
led002Button.addEventListener("change", function(){
checkToggle("Led002");
});
}
} () );
当我在 gear s2 网络模拟器上模拟这个时,它工作得很好。
但是当我在 gear s2 本身上安装它时,我的网络服务器没有收到任何请求。我在 config.xml 文件中授予我的应用程序互联网权限和对我的网络服务器的访问权限:
<access origin="https://www.thomashuster.nl" subdomains="true"></access>
<tizen:privilege name="http://tizen.org/privilege/internet"/>
但没有成功。谁能告诉我我忘记了什么?谢谢!
您确定您的代码没有从任何其他域访问吗?
如果是从其他域访问,则需要将config.xml中的访问源修改为
<access origin="*" subdomains="true"></access>
或
<access origin="*" subdomains="true"/>