修改Parse-SDK-JS之旅:request请求

在上一篇《编译Parse-SDK-JS之旅》中已经介绍了环境安装以及编译的方法,这里不多说。

我们现在要做的,是改变request方式。
因为微信小程序中,不能使用xmlHttpRequest对象,只能使用官方提供的wx.request api去请求网络资源,所以我们要修改代码,才能移植使用。

定位脚本

研究了会代码,发现网络请求函数在src/RESTController.js文件中,摘抄部分代码如下:

RESTController.js

修改脚本

好了,我们首先来确认下,我们需要在微信小程序中进行使用,所以什么xmlHttpRequest之类的代码,都可以删除了。
然后我们再修改ajax方法即可(request方法不需要修改,因为它也是调用的ajax
修改完毕后的代码如下:

  ajax(method: string, url: string, data: any, headers?: any) {

    var promise = new ParsePromise();
    var attempts = 0;

    var dispatch = function() {

      headers = headers || {};
      if (typeof(headers['Content-Type']) !== 'string') {
        headers['Content-Type'] = 'text/plain'; // Avoid pre-flight
      }
      // 发起请求
      wx.request({
        url, data, method, headers,
        success: (res) => {
          // 请求成功
          promise.resolve(res.data, res.statusCode, res);
        },
        fail: (res) => {
          // 请求失败
          promise.reject(res.toString());
        },
        complete: (res) => {
          // 请求完成
        }
      });
    }
    dispatch();

    return promise;
  },

所以,这个脚本看起来大概是这样的(确实删除了很多无用的代码,爽!)

最终效果

测试代码

代码修改好了,我们重新编译一下,然后复制dist/parse.min.js文件到微信小程序目录,就可以使用了。

最终测试,发现完美使用!

实际在测试中,还是有点问题,比如localStorage问题,这个下边讲,还有就是wx.request规定url不能带端口,这个请自行更改,这里只是测试代码有效性

测试结果

附:
修改Parse-SDK-JS之旅:localStorage存储

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.几种基本数据类型?复杂数据类型?值类型和引用数据类型?堆栈数据结构? 基本数据类型:Undefined、Nul...
    极乐君阅读 11,040评论 0 106
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,273评论 19 139
  • 不知道从什么时候开始,读书和学习成了一对好基友,似乎不读书就会变傻,读书就是学习的代名词。我只想小声的说,不至于吧...
    Bookish_陈键阅读 3,878评论 0 0
  • 深秋 下着细雨 路上开满了伞花 行色匆匆 地上铺满了金花 原地逗留 我的脚步 比飘落的枯叶略慢些 我的思绪 比飘落...
    Zing13阅读 1,625评论 0 1
  • 捧着这样一本尚未发表的书,看的感觉挺奇妙的,有点像在听茉莉给我讲故事,也有点像是茉莉在给我看她日记的感觉。 30多...
    木子胧阅读 2,548评论 0 0

友情链接更多精彩内容