- 我购买了图片内容安全服务,请问在什么地方看我剩余多少次调用?
[图片]
2020-02-17 - 小程序云开发 如何调用第三方接口
小程序云开发 如何调用第三方接口
2018-12-24 - 小程序搜索优化指南(SEO)
2019年上半年微信发布了基于小程序页面的搜索,为了让我们更好地发现及理解小程序的页面,结合过去一段时间来我们遇到的各种情况,我们强烈建议各位开发者花一些宝贵的时间认真阅读本文:) 爬虫访问小程序内页面时,会携带特定的 user-agent "mpcrawler" 及场景值:1129 1. 小程序里跳转的页面 (url) 可被直接打开。 小程序页面内的跳转url是我们爬虫发现页面的重要来源,且搜索引擎召回的结果页面 (url) 是必须能直接打开,不依赖上下文状态的。特别的:建议页面所需的参数都包含在url 2. 页面跳转优先采用navigator组件。 小程序提供了两种页面路由方式: a.navigator 组件 b. 路由 API,包括 navigateTo / redirectTo / switchTab / navigateBack / reLaunch 建议使用 navigator 组件,若不得不使用API,可在爬虫访问时屏蔽针对点击设置的时间锁或变量锁。 3.清晰简洁的页面参数。 结构清晰、简洁、参数有含义的 querystring 对抓取以及后续的分析都有很大帮助,但是将 JSON 数据作为参数的方式是比较糟糕的实现。 4. 必要的时候才请求用户进行授权、登录、绑定手机号等。 建议在必须的时候才要求用户授权(比如阅读文章可以匿名,而发表评论需要留名)。 5. 我们不收录 web-view 中的任何内容。 我们暂时做不到这一点,长期来看,我们可能也做不到。 6. 利用 sitemap 配置引导爬虫抓取,同时屏蔽无搜索价值的路径。 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html 7. 设置一个清晰的标题和页面缩略图。 页面标题和缩略图对于我们理解页面和提高曝光转化有重要的作用。 通过wx.setNavigationBarTitle或 自定义转发内容onShareAppMessage对页面的标题和缩略图设置,另外也为 video、audio 组件补齐 poster /poster-for-crawler属性。 8. 使用页面路径推送能力 可极大丰富微信可以收录的内容,进而提高小程序内容的曝光机会。请参考: https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/search/search.submitPages.html
2020-01-14 - 云函数基于云存储的 读写文本文件
云函数的空间不允许写文件的 这用起来 很麻烦的 有的时候需要读写文件的 。所以分享下基于云存储的 读写文本文件 // 云函数入口文件 const cloud = require('wx-server-sdk') cloud.init() // 云函数入口函数 exports.main = async(event, context) => { let buffer = new Buffer("我是谁 我来自哪里 我要干啥", "utf-8"); //上传文件 const upload = await cloud.uploadFile({ cloudPath: 'testTxt.txt', fileContent: buffer, }) //读取文件 const res = await cloud.downloadFile({ fileID: upload.fileID }); //获取文件内容 const d_buffer = res.fileContent; return { upload, //文件内容转utf8 txt: d_buffer.toString('utf8') }; }
2018-11-05 - 哪位大佬能告诉我一下,云开发数据库操作时,我先查后改会不会因为并发导致数据错乱?
比如我使用where先查询组,如果组成员是0,就往里面添加成员,确保每个组成员只有一个人,但是会不会有可能发生并发,在我先查找到空组后,另外一个用户同时操作,push进去了,等我再执行update的时候,实际变成了这个组已经有一个成员,加上我push的,最终这个组会有两个成员,这种情况会不会发生呢?怎么解决? [代码] db.collection([代码][代码]'group'[代码][代码]).where({[代码][代码] [代码][代码]member: _.size(0)[代码][代码] [代码][代码]}).update({[代码][代码] [代码][代码]data: {[代码][代码] [代码][代码]member: _.push([OPENID])[代码][代码] [代码][代码]}[代码][代码] [代码][代码]})[代码]
2019-12-05