導航:首頁 > 文件目錄 > 微信小程序雲函數入口文件

微信小程序雲函數入口文件

發布時間:2023-08-09 23:01:30

『壹』 微信程序雲開發修改雲資料庫中的數據方法

小程序代碼中無法直接修改他人創建的數據記錄
例如:資料庫表中的_openid欄位是自動生成的,哪個用戶創建的記錄這個openid就是用戶的openid,雲資料庫的許可權分配也是根據openid來進行的。
解決方案:
第一步:創建雲函數,在函數中編寫修改資料庫的操作代碼
//
雲函數入口文件
const
cloud
=
require('wx-server-sdk')
cloud.init()
const
db
=
cloud.database()
const
_
=
db.command
//
雲函數入口函數
exports.main
=
async
(event,
context)
=>
{
try
{
return
await
db.collection('表名').doc('id欄位').update({
//
data
傳入需要局部更新的數據
data:
{
isHave:
true
}
})
}
catch
(e)
{
console.error(e)
}
}
提示:小程序傳入雲函數的參數在event中,使用方法:event.參數名稱。
第二步:將雲函數上傳並部署到雲
提示:右鍵創建的雲函數--選擇「上傳並部署」
第三步:小程序調用該函數
wx.cloud.callFunction({
//
雲函數名稱
name:
'雲函數名稱(即創建雲函數時的名稱)',
//
傳給雲函數的參數
data:
{
a:
1
},
success:
function
(res)
{
console.log(res)
},
fail:
console.error
})
以上所述是小編給大家介紹的微信小程序雲開發修改雲資料庫中的數據方法詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
您可能感興趣的文章:小程序雲開發獲取不到資料庫記錄的解決方法小程序雲開發實現資料庫非同步操作同步化微信小程序雲開發之資料庫操作微信小程序雲開發實現雲資料庫讀寫許可權微信小程序雲開發之使用雲資料庫微信小程序雲開發(資料庫)詳解解決微信小程序雲開發中獲取資料庫的內容為空的方法詳解小程序雲開發資料庫

『貳』 微信小程序頭像怎麼改

主要步驟

『叄』 微信小程序同步微信公眾號文章(二)

首先確認是否有相應的介面許可權,這里主要用到獲取素材相關的介面,可以看到對應介面文檔,個人號還是有對應許可權的。

在新增了永久素材後,開發者可以分類型獲取永久素材的列表:

1、獲取永久素材的列表,也包含租廳跡公眾號在公眾平台官網素材管理模塊中新建的圖文消息、語音、視伏芹頻等素材 。

2、臨時素材無法通過本介面獲取。

3、調用該介面需https協議。

實現的邏輯還是比較簡單的,具體分兩個步驟:

1、獲取公眾號的access_token

獲取公眾號的access_token的在前文中已經實現。

基於微信小程序雲函數的方式獲取微信公眾號access_token -

2、遍歷調用公眾號永久素材列表介面獲取數據

調用素材列表介面,獲取相應的文章信息,這里主要獲取公眾號的圖文信息(type為news),介面調用請求說明:

http請求方式: POST

https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=ACCESS_TOKEN

調取素材列表之後在小程序中通過視圖組件scroll-view來實現,主要有標題、封面圖、摘要:

<scroll-view class="container"scroll-y='true' style="height:{{height}}px" bindscrolltolower='lower'>

<block wx:for="{{res}}" >

<view class='feed-item' id='{{item.title}}' bindtap='getDetial'>

<view>

<text >{{item.title}}</text>

</view>

<view style='text-align: center'>

<image src='{{item.image_url}}'>tupian </image>

</view>

<view>

<text >{{item.digest}}</text>

</view>

</view>

</block>

</scroll-view>

文章列表在弊並頁面首次載入時就獲取:

/**

* 生命周期函數--監聽頁面載入

*/

onLoad: function (options) {

wx.getSystemInfo({

success: (res) => {

this.setData({

height: res.windowHeight

})

}

})

this.getData()

}

函數getData()實現步驟,具體請求函數用雲函數來實現,先從調取acces_token:

// 雲函數入口文件

const cloud = require('wx-server-sdk')

const news = require('New')

cloud.init()

// 雲函數入口函數

exports.main = async (event, context) => {

let token = null;

await cloud.callFunction({

name:'token'

}).then(function(data){

token = data.result;

});

let offset = event.offset;

let count = event.count;

let nw = new news(token);

let rst = nw.getWechatPosts(offset,count);

return rst;

}

然後調取文章列表信息,每次獲取10條信息:

//獲取文章列表

getData(){

var that = this;

let pgno = this.data.pageNo+1;

let result = this.data.res;

wx.cloud.callFunction({

name:'news',

data:{

offset:this.data.offset,

count:this.data.count

},

success:function(res){

var resArr = [];

let body = res.result.body;

let total_count = body.total_count;//總共圖文數量

let item_count = body.item_count;//本次調用數量

let item = body.item;

let page_total = parseInt((total_count + that.data.count - 1) / that.data.count);

let mud = total_count % that.data.count;

const db = wx.cloud.database();

for (let i = 0; i < item.length; i++) {

let news_item = item[i].content.news_item;

//單圖文消息及多圖文消息

for (let j = 0; j < news_item.length; j++) {

let title = news_item[j].title;//標題

let url = news_item[j].url;//詳細地址

let image_url = news_item[j].thumb_url;//封面圖片地址

let digest = news_item[j].digest;//摘要

let author = news_item[j].author;//作者

let content = news_item[j].content;

resArr.push(new nw(total_count, item_count, title, url, image_url, digest, author, content));

let res_id = null;

db.collection('content').where({

_id: url

}).get({

success: function (res) {

res_id = res.data[0]._id;

}

})

if (res_id === url){

}else{

db.collection('content').add({

data: {

_id: url,

content: content,

title: title

},

success: function (res) {

}

})

}

}

that.setData({

res: result.concat(resArr),

page_total: page_total,

pageNo: pgno,

mud: mud

});

}

}

})

}

scroll-view組件到底觸發事件實現函數:

lower() {

//總頁數18/10=1

var pageno = this.data.pageNo;

var page = this.data.page_total;

console.log("總頁數:" + page+",第"+pageno+"頁"+"zuohouy:"+this.data.mud)

if (pageno > page) {//page 4

wx.showToast({ //如果全部載入完成了也彈一個框

title: '我也是有底線的',

icon: 'success',

ration: 300

});

return false;

} else {

wx.showLoading({ //期間為了顯示效果可以添加一個過度的彈出框提示「載入中」

title: '載入中',

icon: 'loading',

});

let offset = this.data.offset;

let count = this.data.count;

offset = this.data.offset + this.data.count;

console.log("offset:" + offset+"count:"+count)

this.setData({

offset: offset,

count: count

});

setTimeout(() => {

this.getData();

wx.hideLoading();

}, 1500);

}

}

閱讀全文

與微信小程序雲函數入口文件相關的資料

熱點內容
g71的編程應注意什麼 瀏覽:572
文件路徑不符合是什麼意思 瀏覽:543
qq如何換綁微信綁定 瀏覽:67
文件包下載的安裝包在哪裡 瀏覽:811
90版本升級不送 瀏覽:186
工具箱英文 瀏覽:382
南翔嘉定編程課哪裡好 瀏覽:853
win10改變文件格式 瀏覽:475
linux中的物理地址和虛擬地址 瀏覽:493
有哪些app可以接游戲訂單 瀏覽:472
蘋果硬碟數據恢復要多少錢 瀏覽:394
js綁定下拉框資料庫數據 瀏覽:448
cad文件怎麼復制到另一個文件里邊 瀏覽:858
dxp鑽孔文件 瀏覽:631
iphone大悅城換機 瀏覽:538
找結婚對象上什麼網站 瀏覽:974
學生信息管理系統程序設計報告 瀏覽:640
微信文件怎麼刪除怎麼恢復 瀏覽:407
編程程序怎麼復制 瀏覽:467
文件更改 瀏覽:327

友情鏈接