乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      微信小程序與Java后臺的通信

       wwq圖書世界 2019-10-10

      一、寫在前面

      最近接觸了小程序的開發(fā),后端選擇Java,因?yàn)樾〕绦虻拇a運(yùn)行在騰訊的服務(wù)器上,而我們自己編寫的Java代碼運(yùn)行在我們自己部署的服務(wù)器上,所以一開始不是很明白小程序如何與后臺進(jìn)行通信的,然后查找資料發(fā)現(xiàn)結(jié)合了官方提供的api后好像和我們普通的web前后端通信也沒有多大的區(qū)別,有想法后就寫了這個(gè)測試程序。

      二、API文檔

      wx.request(OBJECT)

      發(fā)起網(wǎng)絡(luò)請求。使用前請先閱讀說明。

      OBJECT參數(shù)說明:

      參數(shù)名類型必填默認(rèn)值說明
      url String   開發(fā)者服務(wù)器接口地址
      data Object/String   請求的參數(shù)
      header Object   設(shè)置請求的 header,header 中不能設(shè)置 Referer。
      method String GET (需大寫)有效值:OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
      dataType String json 如果設(shè)為json,會嘗試對返回的數(shù)據(jù)做一次 JSON.parse
      success Function   收到開發(fā)者服務(wù)成功返回的回調(diào)函數(shù)
      fail Function   接口調(diào)用失敗的回調(diào)函數(shù)
      complete Function   接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行)

      success返回參數(shù)說明:

      參數(shù)類型說明最低版本
      data Object/String 開發(fā)者服務(wù)器返回的數(shù)據(jù)  
      statusCode Number 開發(fā)者服務(wù)器返回的 HTTP 狀態(tài)碼  
      header Object 開發(fā)者服務(wù)器返回的 HTTP Response Header 1.2.0

      data 數(shù)據(jù)說明:

      最終發(fā)送給服務(wù)器的數(shù)據(jù)是 String 類型,如果傳入的 data 不是 String 類型,會被轉(zhuǎn)換成 String 。轉(zhuǎn)換規(guī)則如下:

      • 對于 header['content-type'] 為 application/json 的數(shù)據(jù),會對數(shù)據(jù)進(jìn)行 JSON 序列化
      • 對于 header['content-type'] 為 application/x-www-form-urlencoded 的數(shù)據(jù),會將數(shù)據(jù)轉(zhuǎn)換成 query string (encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...)

      示例代碼

      復(fù)制代碼
      wx.request({
        url: 'test.php', //僅為示例,并非真實(shí)的接口地址
        data: {
           x: '' ,
           y: ''
        },
        header: {
            'content-type': 'application/json' // 默認(rèn)值
        },
        success: function(res) {
          console.log(res.data)
        }
      })
      復(fù)制代碼

      三、基本思路

      將數(shù)據(jù)通過get方式傳到Java servlet類,servlet得到微信小程序的數(shù)據(jù)打印出來并返回一個(gè)數(shù)據(jù)給微信小程序,從而實(shí)現(xiàn)一個(gè)最簡單的前后端通信。

      四、關(guān)鍵代碼

      微信小程序代碼

      index.wxml

        <view>
        <button bindtap='bindtest'>test</button>
        </view>

      index.js

      復(fù)制代碼
        bindtest: function(){
          wx.request({
            url: 'http://localhost:8080/Demo01/servlet02',
            data:{
              username:'001',
              password:'abc'
            },
            method:'GET',
            header: {
              'content-type': 'application/json' // 默認(rèn)值
            },
            success:function(res){
              console.log(res.data);
            },
            fail:function(res){
              console.log(".....fail.....");
            }
          })
        },
      復(fù)制代碼

      Java serlvet類代碼

      復(fù)制代碼
          protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
              // TODO Auto-generated method stub
              
              response.setContentType("text/html;charset=utf-8");          
              /* 設(shè)置響應(yīng)頭允許ajax跨域訪問 */  
              response.setHeader("Access-Control-Allow-Origin", "*");  
              /* 星號表示所有的異域請求都可以接受, */  
              response.setHeader("Access-Control-Allow-Methods", "GET,POST");  
             
              //獲取微信小程序get的參數(shù)值并打印
              String username = request.getParameter("username");
              String password = request.getParameter("password");
              System.out.println("username="+username+" ,password="+password);
              
              //返回值給微信小程序
              Writer out = response.getWriter(); 
              out.write("進(jìn)入后臺了");
              out.flush();   
          }
      復(fù)制代碼

      五、效果演示

      前端控制臺

      ecplise控制臺

      至此說明微信小程序與Java后臺通信成功!當(dāng)然這是最簡單的通信,比較復(fù)雜的是需要對Json數(shù)據(jù)的處理,以后有時(shí)間再總結(jié)下。

        本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多