Rest Post请求在web模拟器上工作,但在应用程序上不工作

Rest Post请求在web模拟器上工作,但在应用程序上不工作,rest,post,web-applications,tizen,tizen-wearable-sdk,Rest,Post,Web Applications,Tizen,Tizen Wearable Sdk,我正在为三星gear s3制作一个tizen应用程序,当我在网络模拟器上启动我的应用程序时,我试图使用javascript发送一个post请求。请求工作正常,但当我在我的设备上启动应用程序时,请求不起作用 我在config.xml上添加了internet权限 <script type="text/javascript"> function send(){ console.log("1"); var data = "<m2m:&g

我正在为三星gear s3制作一个tizen应用程序,当我在网络模拟器上启动我的应用程序时,我试图使用javascript发送一个post请求。请求工作正常,但当我在我的设备上启动应用程序时,请求不起作用

我在config.xml上添加了internet权限

    <script type="text/javascript">
     function send(){
        console.log("1");
        var data = "<m2m:>";

        var xhr = new XMLHttpRequest();
        xhr.withCredentials = true;

        xhr.addEventListener("readystatechange", function () {
          if (this.readyState === 4) {
            console.log(this.responseText);
          }
        });

        xhr.open("POST", "http://127.0.0.1:8081/~/in-cse/in-name/MY_SENSOR/DATA");
        xhr.setRequestHeader("X-M2M-Origin", "admin:admin");
        xhr.setRequestHeader("Content-Type", "application/xml;ty=4");
        xhr.setRequestHeader("cache-control", "no-cache");

        xhr.send(data);
        console.log("end");
    }
    </script>

函数send(){
控制台日志(“1”);
var数据=”;
var xhr=new XMLHttpRequest();
xhr.withCredentials=true;
xhr.addEventListener(“readystatechange”,函数(){
if(this.readyState==4){
console.log(this.responseText);
}
});
xhr.open(“POST”http://127.0.0.1:8081/~/in-cse/in-name/MY_-SENSOR/DATA”);
setRequestHeader(“X-M2M-Origin”,“admin:admin”);
setRequestHeader(“内容类型”,“应用程序/xml;ty=4”);
setRequestHeader(“缓存控制”、“无缓存”);
发送(数据);
控制台日志(“结束”);
}
因此,我的服务器需要在其一侧添加m2m,但这是相关的,因为它正在为邮递员工作

我认为这是cors政策的一个问题,你知道我如何解决这个问题吗


感谢您的时间

我对这个主题做了一些研究,在我看来,您需要在应用程序的config.xml中添加访问域。加入:

<access origin="http://127.0.0.1:8081/~/in-cse/in-name/MY_SENSOR/DATA" subdomains="true"/>

我的体验是使用Tizen.NET应用程序,但是如果手表不是通过wifi或LTE直接连接到互联网,而是通过蓝牙通过手机连接,那么您需要在web请求中将手机设置为代理。如果是这样的话,请告诉我,我可以分享代码。谢谢你的回答,她直接与wifi连接