前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >利用python操作小程序云数据库实现简单的增删改查

利用python操作小程序云数据库实现简单的增删改查

作者头像
Bug生活2048
发布2019-06-11 19:12:00
1.8K0
发布2019-06-11 19:12:00
举报
文章被收录于专栏:Bug生活2048Bug生活2048

不止python,你可以利用任何语言那实现通过http请求来操作你自己的小程序云数据库了

背景

也是在最近吧,小程序更新了云开发 HTTP API 文档,提供了小程序外访问云开发资源的能力,使用 HTTP API 开发者可在已有服务器上访问云资源,实现与云开发的互通。

原本云数据库还是相对封闭的,只能通过自己的小程序或者云函数来进行访问,而现在,你只要调用官方提供的接口就能实现对云函数的增删改查了。

截图1

这里通过python作为演示来进行简单的测试,当然你也可以使用javaphp等任何你熟悉的语言进行编码。

其实实现起来还是比较简单的,通过小程序的APPIDAPPSECRET来获取ACCESS_TOKEN,获取到调用凭证之后就可以根据文档提供的API对云数据库进行操作了。

首先我们来获取ACCESS_TOKEN,相关python代码如下:

代码语言:javascript
复制
'''获取小程序token'''def get_access_token():    url='{0}cgi-bin/token?grant_type=client_credential&appid={1}&secret={2}'.format(WECHAT_URL,APP_ID,APP_SECRET)    response =requests.get(url)    result=response.json()    print(result)    return result['access_token']

在云数据库中新增一个集合,代码如下:

代码语言:javascript
复制
'''新增集合'''def add_collection(accessToken):    url='{0}tcb/databasecollectionadd?access_token={1}'.format(WECHAT_URL,accessToken)    data={        "env":ENV,        "collection_name":TEST_COLLECTION    }    response  = requests.post(url,data=json.dumps(data),headers=HEADER)    print('1.新增集合:'+response.text)

在集合中新增一笔数据,代码如下:

代码语言:javascript
复制
'''新增数据'''def add_data(accessToken):    url='{0}tcb/databaseadd?access_token={1}'.format(WECHAT_URL,accessToken)    query='''    db.collection("test_collection").add({        data:{            key:1,            value:"2345"        }    })    '''
    data={        "env":ENV,        "query":query    }    response  = requests.post(url,data=json.dumps(data),headers=HEADER)    print('2.新增数据:'+response.text)

查询某个集合中的数据,代码如下:

代码语言:javascript
复制
'''查询数据'''def query_data(accessToken):    url='{0}tcb/databasequery?access_token={1}'.format(WECHAT_URL,accessToken)    query='''    db.collection("test_collection").limit(10).skip(1).get()    '''
    data={        "env":ENV,        "query":query    }    response  = requests.post(url,data=json.dumps(data),headers=HEADER)    print('3.查询数据:'+response.text)    result=response.json()    resultValue =json.loads(result['data'][0])    return resultValue['_id']

删除该集合中的某笔数据,代码如下:

代码语言:javascript
复制
'''删除数据'''def delete_data(accessToken,id):    url='{0}tcb/databasedelete?access_token={1}'.format(WECHAT_URL,accessToken)    query='''db.collection("test_collection").doc("{0}").remove()'''.format(id)
    data={        "env":ENV,        "query":query    }    response  = requests.post(url,data=json.dumps(data),headers=HEADER)    print('4.删除数据:'+response.text)

删除云数据库中某个集合,代码如下

代码语言:javascript
复制
'''删除集合'''def delete_collection(accessToken):    url='{0}tcb/databasecollectiondelete?access_token={1}'.format(WECHAT_URL,accessToken)    data={        "env":ENV,        "collection_name":TEST_COLLECTION    }    response  = requests.post(url,data=json.dumps(data),headers=HEADER)    print('5.删除集合:'+response.text)

是不是感觉挺简单的,就是调用相应的接口实现对云数据库相应的操作。

官方开放了除小程序外访问云数据库的权限,使得每个基于云数据库的小程序不再是一座座鼓捣了。我们可以用该API去实现基于云开发的后台应用了。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-06-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Bug生活2048 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档