我使用以下Python脚本在'ifttt‘上触发一个'Maker’事件,如下所示:
import requests
from main import get_ifttt
def trigger_event( event, key, json_data={} ):
ca_certs = "/etc/ssl/certs/ca-certificates.crt"
url="https://maker.ifttt.com/trigger/%s/with/key/%s"%(event, key)
r=requests.post( url, data=json_data, verify=ca_certs )
assert(r.status_code==200)
if __name__=='__main__':
trigger_event( 'calendar', get_ifttt(), "{ 'Value1': 'something' }" )
ifttt配方创建了一个google日历条目:使用如下文本:
{{OccurredAt}} "{{EventName}}" occurred on the Maker Channel : Value1: "{{Value1}}"
日历事件创建正确;但'Value1‘字符串为空?因此,该条目如下所示:
"calendar" occurred on the Maker Channel : Value1: "
“
如果我也切换到'Notify‘事件也会发生这种情况?
我也尝试过使用'curl‘命令行加上'?Value=xxx’;这也不起作用。
我试过使用'Value1‘和'value1':但结果相同。
我在这里做错了什么?
(这段代码调用了一个名为'get_ifttt‘的方法:这只返回了我的秘密API key)。
发布于 2015-12-15 23:15:44
您可以通过指定Content-Type来发送“value1”字符串。
r=requests.post( url, data=json_data, verify=ca_certs, headers={'Content-Type': 'application/json'} )
此外,您应该使用'Value1‘而不是'value1’。
trigger_event( 'calendar', get_ifttt(), "{ 'value1': 'something' }" )
https://stackoverflow.com/questions/33982597
复制相似问题