当前位置:   article > 正文

微信小程序与OneNet之间的数据交互 POST、GET数据 invalid JSON_微信小程序请求onenet官网post指令出现parameter error:eof

微信小程序请求onenet官网post指令出现parameter error:eof

微信小程序在与网站服务器进行数据交互时,会用到wx.request函数,GET表示获取,POST表示上传。

2020年4月14日更新:今天才在官方文档中看到下面消息 

       

1、微信小程序上传数据到OneNet服务器时:

method:POST

data参数表示主要上传的数据,注意上传到OneNet的数据必须是json格式,直接上传数据时不能成功的,会返回错误信息:invalid JSON。  需要用到JSON.stringify函数将数据转化为json格式,此处花了3个多小时才找出问题所在。

header:网页访问请求的头部,需添加"content-type":'application/x-www-form-urlencoded'

示例程序如下:

  1. OneNet_Post:function(){
  2. var that=this
  3. let deviceid = "5*****819"
  4. let apikey = "5L8***************9o="
  5. let data={
  6. "datastreams": [
  7. {"id": "temp1","datapoints":[{"value": that.data.temp1}]},
  8. {"id": "temp2","datapoints":[{"value": that.data.temp1-1}]},
  9. ]
  10. }
  11. wx.request({
  12. url: "https://api.heclouds.com/devices/" + deviceid + "/datapoints",
  13. method:'POST',
  14. header:{
  15. "content-type": 'application/json',
  16. "api-key": apikey
  17. },
  18. data:JSON.stringify(data),
  19. success(res){
  20. console.log("更新数据成功",res)
  21. },
  22. fail: function(res){
  23. wx.showToast({ title: '系统错误' })
  24. },
  25. complete:function(res){
  26. wx.hideLoading()
  27. }
  28. })
  29. },

1、微信小程序从OneNet服务器获取数据时:

method:GET

data:可以没有此参数

header:网页访问请求的头部,需添加"content-type":'application/x-www-form-urlencoded'

示例程序如下:

  1. OneNet_Get: function(){
  2. var that=this
  3. let deviceid = "5******9"
  4. let apikey = "5****************="
  5. wx.request({
  6. url: "https://api.heclouds.com/devices/" + deviceid + "/datastreams",
  7. method:'GET',
  8. header:{
  9. "content-type": 'application/x-www-form-urlencoded',
  10. "api-key": apikey
  11. },
  12. success(res){
  13. console.log(res)
  14. if(res.statusCode === 200){
  15. that.setData({
  16. temp1: res.data.data[1].current_value,
  17. temp2: res.data.data[2].current_value,
  18. })
  19. }
  20. },
  21. fail: function(res){
  22. wx.showToast({ title: '系统错误' })
  23. },
  24. complete:function(res){
  25. wx.hideLoading()
  26. }
  27. })
  28. },

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/644217
推荐阅读
相关标签
  

闽ICP备14008679号