在Phonegap中的AJAX REST服务调用期间未正确检索值

Values not getting retrieved correctly during AJAX REST service call in Phonegap

本文关键字:检索 调用 中的 Phonegap AJAX REST 服务      更新时间:2023-09-26

下面是我的代码

<script type="text/javascript">
var Tag1, Tag2, Tag3, Tag4;
var Data1,Data2,Data3,Data4;
function onDeviceReady() {
    $.ajax({
        type : 'GET',
        url : "http://192.168.1.150:9051/something.xml",
        data : {
            key : "value"
        },
        dataType : "xml",
        success : function(xml) {
            Tag1 = $(xml).find('Tag').eq(0).text();
            Tag2 = $(xml).find('Tag').eq(1).text();
            Tag3 = $(xml).find('Tag').eq(2).text();
            Tag4 = $(xml).find('Tag').eq(3).text();
            Data1 = $(xml).find('Data').eq(0).text();
            Data2 = $(xml).find('Data').eq(1).text();
            Data3 = $(xml).find('Data').eq(2).text();
            Data4 = $(xml).find('Data').eq(3).text();
            var oHead1 = document.getElementsByTagName('HEAD').item(0);
            var paramScript = document.createElement("script");
            paramScript.type = "text/javascript";
            paramScript.setAttribute('Tag1', Tag1);
            paramScript.setAttribute('Tag2', Tag2);
            paramScript.setAttribute('Tag3', Tag3);
            paramScript.setAttribute('Tag4', Tag4);
            paramScript.setAttribute('Data1', Data1);
            paramScript.setAttribute('Data2', Data2);
            paramScript.setAttribute('Data3', Data3);
            paramScript.setAttribute('Data4', Data4);
            oHead1.appendChild(paramScript);
            var oHead = document.getElementsByTagName('HEAD').item(0);
            var oScript = document.createElement("script");
            oScript.type = "text/javascript";
            oScript.src = "something.js";
            oHead.appendChild(oScript);
        },
        error : function(xhr) {
            alert("Error while loading the Mock Service !!!");
        }
    });
}
document.addEventListener("deviceready", onDeviceReady, false);
</script>

现在假设这是在one.html中调用的,并且它正确地显示了值。但是,假设我转到second.html,然后手动更改something.xml中的服务器值,然后如果我返回到one.html,则这些值不会更改。它展示了旧的价值观。更改不受影响。我做错了什么?

可能是由于缓存问题。你可以试试这样的东西:

url : "http://192.168.1.150:9051/something.xml" + "?time=" + Date.now(),

尝试避免它。