苹果核
苹果核
  • 发布:2015-05-07 18:58
  • 更新:2015-05-08 10:48
  • 阅读:3391

App与后台交互时远程服务地址应该封装在哪里?

分类:HTML5+

App与后台交互时远程服务地址应该封装在哪里?总不能写在js里吧?例如登录功能,需要请求后台服务,修改密码也需要请求后台服务,但肯定都在一个地址上,怎么配置呢?

mui.post('http://api.yuming.com:8870/api/Account/Register',{  
                            MobilePhone: username,  
                            LoginPassword: upassword,  
                            DynamicCode: dtma,  
                            CustomerTypeId:'00'  
                        },function(data){  
                        },'json'  
                    );
2015-05-07 18:58 负责人:无 分享
已邀请:
Danny

Danny - QQ125904483

写一段公用的JS:

//获取保存的系统服务连接地址  
//从plus.storage中读取当前服务连接地址配置,如果没有返回默认值  
function ythServiceAddress() {  
    var initSA = {  
        "SerCommon": "http://192.168.10.58:6060/YTHMAPPService/CommonService/",  
        "SerJoyoJ": "", //暂无配置  
        "SerJoyoX": "" //暂无配置  
    };  
    this.GetCommon = function() {  
        var stoSA = plus.storage.getItem("YTHServiceAddress");  
        if (Boolean(stoSA)) {  
            return JSON.parse(stoSA).SerCommon;  
        } else {  
            return initSA.SerCommon;  
        }  
    };  
    this.SetCommon = function(strAddress) {  
        if (!Boolean(strAddress)) return;  
        var stoSA = plus.storage.getItem("YTHServiceAddress");  
        var setSA = Boolean(stoSA) ? JSON.parse(stoSA) : initSA;  
        setSA.SerCommon = strAddress;  
        plus.storage.setItem("YTHServiceAddress", JSON.stringify(setSA));  
    };  
};

设置服务地址:

var ythsa = new ythServiceAddress();  
var baseurl = ythsa.GetCommon();

设置获取服务地址:

var ythsa = new ythServiceAddress();  
var commonUrl = document.getElementById("txtCommonServiceUrl").value;  
ythsa.SetCommon(commonUrl);
YanRong

YanRong

简单点的话,写到一个 js 文件里,定义成全局变量就可以了吧。

写在js里应该没有什么问题吧,URL没有必要进行保护。

苹果核

苹果核 (作者)

非常感谢两位,两位的思路很有帮助,我参考了官方的APP升级update,去服务端读取JSON,可以在JSON中做更详细的生产环境和测试环境的配置

尘岳two

尘岳two

storage

该问题目前已经被锁定, 无法添加新回复