一:主要内容

  • 获取云巴appkey和seckey
  • 状态回复说明
  • get请求
  • post请求

二:获取云巴appkey和seckey

1. 注册云巴

在云巴官网,注册一个云巴账号,官网地址:https://yunba.io/

2. 创建应用

注册账号成功后,会跳转到我的应用列表页面,点击创建应用,输入应用名称和应用包名,点击确定创建应用

2. 查看appkey和seckey

应用创建成功后,点击应用名称,可以查看该应用详情信息,就可以看到appkey和seckey了

三:状态回复说明

1. 发送成功

{"status":0, "messageId": "<message-id>"}

2. 参数错误

{"status":1, "error": "invalid parameters"}

3.内部服务错误

{"status":2, "error": "internal server"}

4.没有应用

{"status":3}

5.发布超时

{"status":4, "error": "timeout"}

6.没有找到 Alias

{"status":5, "alias":"567a4a754407a3cd028aaf6b-test", "error": "alias not found"}

四:get请求

#encoding=utf8
import requests

#Get method encapsulation
def getWebsocket(msg,result):
    data ={
        "method": "publish",
        "appkey": "这里填你自己的应用的appkey,就是上面二中获取的数据",
        "seckey": "这里填你自己的应用的seckey,就是上面二中获取的数据",
        "topic": "这里填频道的名称,如channel1",
        "msg": msg
    }
    results = requests.get(url='http://rest.yunba.io:8080', params=data)
    print(results.content)
    resultdata = results.json()
    resultcode = resultdata['status']
    if (0 == resultcode):
        print("Connect websocket to "+result+" messages successfully!")
    else:
        print("Connecting websocket to "++result++" messages failed!")

if __name__ == "__main__":
    #发送消息
    getWebsocket("interfacetest","send msg")

四:post请求

#encoding=utf8
import json
import requests

#post method encapsulation
def postWebsocket(msg,result):
    data ={
        "method": "publish",
        "appkey": "这里填你自己的应用的appkey,就是上面二中获取的数据",
        "seckey": "这里填你自己的应用的seckey,就是上面二中获取的数据",
        "topic": "这里填频道的名称,如channel1",
        "msg": msg
    }

    headers = {'Content-Type':'application/json'}
    values = json.dumps(data)

    results = requests.post('http://rest.yunba.io:8080', data=values, headers=headers)
    print(results.content)
    resultdata = results.json()
    resultcode = resultdata['status']
    if (0 == resultcode):
        print("Connect websocket to "+result+" messages successfully!")
    else:
        print("Connecting websocket to "+result+" messages failed!")

if __name__ == "__main__":
    #发送图片
    postWebsocket("{'img': 'https://www.baidu.com/img/baidu_jgylogo3.gif'}","send picture")
    #发送视频
    postWebsocket("{'video':'https://vjs.zencdn.net/v/oceans.mp4'}", "send video")

python3 get post请求Yunba RESTful API的更多相关文章

  1. Chrome Restful Api 测试工具 Postman-REST-Client离线安装包下载,Axure RP Extension for Chrome离线版下载

    [Postman for Chrome 离线下载] Postman-REST-Client离线安装包,可直接在Chrome浏览器本地安装使用,可模拟各种http请求,Restful Api测试, CS ...

  2. RESTful API的理解

    技术交流的时候遇到了这样的一个问题,被问及开发中用到的是不是Restful API,我说的是,我们现在用到的不属于完全是Restful API.因为我了解到的Restful API,是 通过具体的UR ...

  3. Django编写RESTful API(二):请求和响应

    欢迎访问我的个人网站:www.comingnext.cn 前言 在上一篇文章,已经实现了访问指定URL就返回了指定的数据,这也体现了RESTful API的一个理念,每一个URL代表着一个资源.当然我 ...

  4. 使用WebApiClient请求和管理Restful Api

    前言 本篇文章的内容是WebApiClient应用说明篇,如果你没有了解过WebApiClient,可以先阅读以下相关文章: WebApi client 的面向切面编程 我来给.Net设计一款Http ...

  5. HTTP请求封装:Ajax与RESTful API

    一.HTTP请求 HTTP即超文本传输协议,用以进行HTML 文件. 图片文件. 查询结果等的网络传输. 一个完整的HTTP请求包括:请求行.请求头.空行和请求数据(请求数据可以为空) HTTP1.1 ...

  6. C#中缓存的使用 ajax请求基于restFul的WebApi(post、get、delete、put) 让 .NET 更方便的导入导出 Excel .net core api +swagger(一个简单的入门demo 使用codefirst+mysql) C# 位运算详解 c# 交错数组 c# 数组协变 C# 添加Excel表单控件(Form Controls) C#串口通信程序

    C#中缓存的使用   缓存的概念及优缺点在这里就不多做介绍,主要介绍一下使用的方法. 1.在ASP.NET中页面缓存的使用方法简单,只需要在aspx页的顶部加上一句声明即可:  <%@ Outp ...

  7. 请求与上传文件,Session简介,Restful API,Nodemon

    作者 | Jeskson 来源 | 达达前端小酒馆 请求与上传文件 GET请求和POST请求 const express = require('express'); const app = expre ...

  8. httpclient连接池在ES Restful API请求中的应用

    package com.wm.utils; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http ...

  9. 4- vue django restful framework 打造生鲜超市 -restful api 与前端源码介绍

    4- vue django restful framework 打造生鲜超市 -restful api 与前端源码介绍 天涯明月笙 关注 2018.02.20 19:23* 字数 762 阅读 135 ...

随机推荐

  1. 14:super关键字

    本小节知识点: 1.super基本概念 2.super的作用 1.super基本概念 super是个编译器的指令符号,只是告诉编译器在执行的时候,去调谁的方法. self是一个隐私参数; self r ...

  2. hdu 4864 任务分配贪心

    http://acm.hdu.edu.cn/showproblem.php?pid=4864 有n台机器,m个任务,每台机器有xi时间,yi等级,每个任务也有xj,yj,当一个任务可以被处理的条件是, ...

  3. unigui如何把webApp的子功能映射到微信公众号菜单

    只需要用UniApplication.Parameters.Values[‘xxx’]读取url的参数然后调用就可以 例如:要打开公众号菜单的取样送检指南查询模块,在自定义菜单设定:http://ww ...

  4. hdu 1.2.4

    采用异或... #include<stdio.h> int main() { //freopen("input.txt","r",stdin); i ...

  5. 最全面的Git 使用规范装逼指南[转载]

    <!DOCTYPE html> <script type="text/javascript"> window.logs = { pagetime: {} } ...

  6. 【转】jQuery.validate 用法

    名称                              返回类型                描述 validate(options)          返回:Validator       ...

  7. CentOS 7通过Firewall开放防火墙端口

    发现在CentOS 7上开放端口用iptables没效果(或者是sodino没找到正确的命令,传说Centos7 下默认的防火墙是 Firewall,替代了之前的 iptables)… 使用firew ...

  8. CentOS BIND9安装及配置

    1.安装 #yum install bind   2.备份 named.conf #cp /etc/named.conf /etc/named.conf.bak   3.编辑 named.conf ( ...

  9. ASP.NET微信公众号用于给指定OpenId用户发送红包

    ASP.NET微信公众号用于给指定OpenId用户发送红包 微信公众号要实现对指定用户发送红包,必须指定一个存放兵发放金额的商户号,在微信商户平台里面申请商户号并获取相关参数例如发送红包所要用到的安全 ...

  10. WPF学习笔记(4):获取DataGridTemplateColumn模板定义的内容控件

    在之前的DataGrid的DataGridTemplateColumn列中,自定义了一个TextBox控件,但是在C#代码中提示找不到这个控件,导致无法对该控件进行操作.在网上搜索后,发现一些处理方法 ...