首页/ 填坑/ 文章详情

uni-app uni.request 请求的注意事项

uni-app的由来讲述DCloud是这个行业的先驱者,现在的小程序是站在巨人肩膀上的二次产物。微信小程序,百度小程序,字节跳小程序等等,在商业行为手法上,属于贴商标大法。意味着你只要打通其一,即可畅通全平台小程序开发,同宗同源,uni-app 为此可以做到跨平台开发。

此前有微信小程序开发的基础,uni-app上手基本不成问题,现有的微信小程序类库,直接将 wxuni,更改前缀,瞬间无缝对接,小程序「」过来了。

事情如果真这么简单,那程序员都可以集体离职了。二次开发的产品,不单单换了马甲,甚至会魔改或阉割,在Console看到一大推错误都是小意思了。

最主要uni.request请求数据,报的错误最多,如:

ConsoleAccess to XMLHttpRequest at 'http://www.didaolan/posts/getList' from origin 'http://localhost:8080' has been blocked by CORS policy: Request heer field content-type is not allowed by Access-Control-Allow-Headers in preflight response.

简单点说,header的content-type没有定义传送的参数类型,POST的请求必定要事先声名。

uni.request POST的请求:

uni-appuni.request({
    url: 'http://www.didaolan/posts/getList', 
    method:'POST',
    data: {
        page: 1
        offset: 12
    },
    header: {
        'Content-Type': 'application/x-www-form-urlencoded'
    },
    success: (res) => {
        console.log(res.data);
    }
});

当你以为一切完后,至到你需要传递数组参数时,在Network下看到数组参数变成[Object Object],接口自然无法获数组数据。

[Object Object] 解决方法:

将数组进行字符串转义,使用JSON.stringify()

文章评论0 records

最新 最早

0

最新评论Latest comments

凡心的仙人凡心的仙人 03-18 14:35
谢谢你了!
rantrismrantrism 2023-04-03 11:27
您好~我是腾讯云开发者社区运营,关注了您分享的技术文章,觉得内容很棒,我们诚挚邀请您加入腾讯云自媒体分享计划。完整福利和申请地址请见:https://cloud.tencent.com/developer/support-plan 作者申
唐牛才是食神唐牛才是食神 2022-06-15 10:51
(*°▽°*)八(*°▽°*)♪,解决了
唐牛才是食神唐牛才是食神 2022-06-15 10:49
发现不得了的东西,今晚回去好好研究下...
胖螺胖螺 2022-02-04 00:58
( ゜- ゜)つロ 在写了在写了。看到也有些感慨。因为站长前年在我原博客的留言,让我毅然选择去深造,选择读研,曾经我想过挺多东西的,还是自己本专业的适合我自己。在这先表达感谢。新年快乐!