9***@qq.com
9***@qq.com
  • 发布:2017-02-19 11:02
  • 更新:2022-01-19 00:25
  • 阅读:1239

有没有大神写过用native.js用android原生的http请求?

分类:Native.js

求给个源码案例,调用原生的http请求

2017-02-19 11:02 负责人:无 分享
已邀请:
赵梦欢

赵梦欢 - 专注前端,乐于分享!

  • bianyuan456

    这个没办法在安卓下实现跨域带cookie访问!所以要用非js的解决方案,比如原生的http

    2022-01-18 19:04

bianyuan456

bianyuan456

    var surl = "https://www.baidu.com";    
                //var surl = "http://cf.ams.game.qq.com/ams/ame/amesvr?sServiceType=cf&iActivityId=306817";    

                //var aurl = plus.android.newObject("java.net.URL",surl);    
                var URL = plus.android.importClass("java.net.URL");    
                var aurl = new URL(surl);    

                //var con = plus.android.newObject("java.net.HttpURLConnection",aurl.openConnection());    
                var HttpURLConnection = plus.android.importClass("java.net.HttpURLConnection");    
                var con = new HttpURLConnection();    
                con = aurl.openConnection();    
                //plus.android.invoke(con,"setConnectTimeout","300");    
                //plus.android.invoke(con,"setRequestMethod","GET");    
                //plus.android.invoke(con,"connect");    
                con.setConnectTimeout(3000);    
                con.setRequestMethod("GET");    
                //con.setRequestProperty("Content-type", "application/x-www-form-urlencoded");    
                //con.setDoOutput(true);    
                con.connect();    

                var InputStream = plus.android.importClass("java.io.InputStream");    
                var inputstream = new InputStream();    
                var inputstream = con.getInputStream();    
                var BufferedReader = plus.android.importClass("java.io.BufferedReader");    
                var bufferedReader = new BufferedReader();    
                var InputStreamReader = plus.android.importClass("java.io.InputStreamReader");    
                bufferedReader = new InputStreamReader(inputstream, "utf-8");    
                var line="",acceptData="";    

                //line = bufferedReader.readLine();    
                line =plus.android.invoke(bufferedReader,"readLine");    
                while (line != null) { //不为空进行操作    
                    acceptData += line;    
                    //line = bufferedReader.readLine();    
                    line = plus.android.invoke(bufferedReader,"readLine");    

                }    

                console.log(acceptData,line);    
                console.log(con.getResponseCode());//200说明访问成功了

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