2016-03-20 43 views
1

的论ably.io它们具有一个示例,其中一个可以使用下面的卷曲请求发布的消息到信道:什么是蟒请求等效以下卷曲命令

curl -X POST https://rest.ably.io/channels/channelname/messages \ 
-u "some_AP.aYYMcQ:VmGHauKOqo-35Zxo" \ 
-H "Content-Type: application/json" \ 
--data '{ "name": "greeting", "data": "example" }' 

的值传递给 - 你是一个具有发布权限的API密钥。如何使用Python请求库进行相同的发布请求?我搜索了文档,但找不到它。注意这里没有密码,只有api密钥。

在此先感谢。

+0

[将cURL语法转换为Python,Node.js,PHP](http://curl.trillworks.com/)(虽然似乎不支持基本身份验证) – poke

回答

2

您可以使用此:

requests.post("https://rest.ably.io/channels/channelname/messages", 
    auth=('some_AP.aYYMcQ', 'VmGHauKOqo-35Zxo'), # Equivalent of -u 
    json={ "name": "greeting", "data": "example" }) # Equivalent of --data 

当您使用json选项,-H自动设置为Content-Type: application/json

+0

这很好。谢谢。这是否意味着在一个API键中冒号前的内容是一个用户名,冒号后的密码是密码?很快就会接受答案。希望你能澄清。 – Curious2learn

+0

'auth'参数的一些附加注释:http://docs.python-requests.org/en/master/user/authentication/ – PaulMcG

+0

@ Curious2learn是的,没错。 –