[小程序]Http网络请求

发布时间:2024年01月21日

一、数据请求限制

? ? ? ? 出于安全性(bushi)考虑,小程序请求的数据接口必须具备以下两个条件:

? ? ? ? ①只能请求Https类型

? ? ? ? ②必须将接口域名添加到信任列表中

? ? ? ? 1.配置request合法域名

? ? ? ? 配置步骤如下:小程序管理后台->开发->开发设置->服务器域名->修改request合法域名

? ? ? ? ?2.发起GET请求

? ? ? ? 调用wx.request()方法发起GET请求,代码如下:

wx.request({
    url : 'https:',     //请求地址
    methond : 'GET',    //请求方式
    data:{              //需要发送的数据
        name : 'Alice',
        age : 22
    },
    success:(res) =>{    //回调函数
        console.log(res)
}
})

? ? ? ? 3.发起POST请求

? ? ? ? 和GET请求一样,请求类型调整为POST即可。

wx.request({
    url : 'https:',     //请求地址
    methond : 'POST',    //请求方式
    data:{              //需要发送的数据
        name : 'Alice',
        age : 22
    },
    success:(res) =>{    //回调函数
        console.log(res)
}
})

二、本地调试

? ? ? ? ?开发者在进行开发时,为了缩短开发进度可以使用http协议和本地IP进行调试,这里以小程序+flask服务器为例。(记得在项目中勾选“不校验合法域名”)

????????flask服务器的配置如下:

from flask import Flask        #导入Flask包
from flask import request
app = Flask(__name__)

@app.route('/')                #设置路由
def hello_world():
    return "Hello World"

@app.route('/test',methods=['GET'])
def get():
    page = request.args.get("page",default=1,type=int)      #参数名,默认参数,参数类型
    print('GET:{}'.format(page))
    return "{}".format(page)

@app.route('/test',methods=['POST'])
def post():
    if request.method == 'POST': 
        #从request获取查询参数
        page = request.form['page']
    print('POST:{}'.format(page))
    return "{}".format(page)

if __name__ == "__main__":     #启动程序
    #app.run(host='你的IP',ssl_context='adhoc')    #启用临时CA证书,但是不适用于小程序
    app.run(host='你的IP')
    #app.run()

? ? ? ? IP地址为服务器所在的电脑的IP地址,可以在cmd中使用ipconfig指令查看。

? ? ? ? ?小程序的get方法如下:

getTest(e){
    const that = this
 ????wx.request({
 ??????url:'IP地址和接口',
 ??????method:'GET',
 ??????data:{
 ????????page:10,
 ??????},
 ??????success(res)?{
 ????????console.log(res.data);
 ????????that.setData({?PageX:?res.data?});
 ??????},
       fail(res){
         console.log(res)
       }
 ????});??
 ??},

? ? ? ? 效果如下:?

? ? ? ? 同时服务器端也可以正常收到get

文章来源:https://blog.csdn.net/weixin_37878740/article/details/135726189
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。