欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

IOS 出现不支持的 URL

程序员文章站 2022-07-13 09:08:37
...

IOS9以后添加了新特性,不再支持HTTP协议(不安全)。改用HTTPS

1、在Android中使用HTTP协议

    //登录
    login:function(count,password,callback) {
        var param = {
            "username":count,
            "password":password
        };
        var url = 'http://' + ip + ':' + port + '/api?action=login&param={}'// + JSON.stringify(param);
        //var request = new XMLHttpRequest();

        var request;
        if(window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari
            request=new XMLHttpRequest();
            console.log("使用XMLHttpRequest");
        }else{// code for IE6, IE5
            request=new ActiveXObject("Microsoft.XMLHTTP");
            console.log("使用ActiveXObject");
        }
        console.log("登录:" + url);
        console.log("open");
        request.open("GET", url, true);
        console.log("send");
        request.send();

        request.onreadystatechange = function () {
            console.log("request callback");
            if (request.readyState == 4 && (request.status >= 200 && request.status < 400)) {
                var response = request.responseText;
                var rsp = JSON.parse(response).data;
                var ret = JSON.parse(response).ret;
                if(0 == ret){
                    console.log("登录--失败");
                    console.log(rsp);
                    console.log(ret);
                    callback(false,rsp);
                }else{
                    callback(true, rsp);
                }
            }
        };
    },

上面代码实现账号登录功能,毫无问题。

切换到IOS后,一点击出现 不支持的URL

刚开始不知道问题所在,乱百度。

最后,找到问题

IOS9以后添加了新特性,不再支持HTTP协议(不安全).。改用HTTPS。。。

建议链接:https://github.com/meteor/meteor/issues/4560

网上有一系列的方法改改改。结果都解决不了我的项目问题。果断换协议。