談談小程式云開發的那些坑
在撰寫代碼的時候難免會犯一些低端的錯誤,這里便書寫了一些我曾經犯過的一些錯誤,希望對其他學者有所幫助,
錯誤 示例
// index.js
const cloud = require('wx-server-sdk')
// 就是在這里筆者犯個極為簡單的錯誤我把request-promise'寫成了 request.promise'
const rp=require('request-promise')
exports.main = async (event, context) => {
// 這里獲取到的 openId、 appId 和 unionId 是可信的,注意 unionId 僅在滿足 unionId 獲取條件時回傳
let { OPENID, APPID, UNIONID } = cloud.getWXContext()
// 1.確定介面
// https://ke.qq.com/cgi-bin/comment_new/course_comment_list
// ?cid=476559&count=10&page=0&filter_rating=0&bkn=&r=0.1621205141834321
// https://ke.qq.com/cgi-bin/comment_new/course_comment_list?
// cid=476559&count=10&page=0&filter_rating=0&bkn=&r=0.26457182970476323
// 反爬 referer: https://ke.qq.com/course/476559
//
// 2. 借助模塊,想指定介面發送網路請求 獲取權限 ,回傳出去
//
var options = {
uri: 'https://ke.qq.com/cgi-bin/comment_new/course_comment_list',
qs: {
cid:476559,
count:10,
page:0,
},
headers: {
'referer':'https://ke.qq.com/course/476559',
},
json: true // Automatically parses the JSON string in the response
};
let result = await rp(options).then(res=>{
return res
}).catch(err=>{
console.log(err);
})
return result
}
在這里筆者犯個極為簡單的錯誤我把request-promise'寫成了 request.promise'
const rp=require('request-promise')
心得
在這里分享一些查錯的方法心得,或許有對你們有所幫助
撰寫好云函式后,首先右鍵點擊該云函式目錄選擇" 開啟本地函式除錯", 在本地函式除錯這個界面中選中你將進行除錯的函式,再勾選螢屏右側的開啟本地除錯,然后便會彈出相應結果,下面給出錯誤界面和成功界面示例圖,
成功示例圖

顯示圖上結果說明云函式,除錯通過可以放心的上傳到云開發控制臺的云函式中
右鍵點擊該云函式目錄選擇" 上傳并部署:云端安裝依賴(不上傳node modules)"或者選擇" 上傳并部署:所有檔案",然后等待5S左右,就可以在可視化后臺,云函式串列中看到我們剛剛上傳的云函式,
失敗示例圖

仔細查看系統反饋的錯誤資訊,并對錯誤資訊進行分析
在我這個示例中,可從錯誤資訊里面發現,報了這樣一個錯誤
Cannot find modules 'request.promise' 到這里就恍然大悟原來是自己的書寫錯誤然后改為request-promise,再次除錯就成功了
未安裝相關插件報錯示例圖

出現這種情況的原因可能有以下幾點:
1.是否安裝npm環境
如何配置npm?
2.是否正確安裝相關插件
怎么在npm下安裝插件?
小生不才文章若有錯誤,歡迎大家前來指正,如果有疑問也歡迎diss我,我也會盡可能給與答復.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/43724.html
標籤:JavaScript
