Как отправить строку json в следующий скрипт с помощью webhook?Как передать форматированную строку json в качестве полезной нагрузки для работника iron.io через webhook?
Ниже мой сценарий на iron.io, что я хочу прочитать полезную нагрузку.
import sys, json
sys.argv[8]
payload_file = None
payload = None
for i in range(len(sys.argv)):
if sys.argv[i] == "-payload" and (i + 1) < len(sys.argv):
payload_file = sys.argv[i + 1]
with open(payload_file,'r') as f:
payload = json.loads(f.read())
print "printing resulting payload: " + str(payload)
break
Когда я в очередь JSon отформатированная строки в платформе, я получаю желаемый результат, который вы можете увидеть ниже:
JSon отформатированной строка, которую я занесен
{u'env': u'production'}
Вход показанного на Железе .io
printing resulting payload: {u'env': u'production'}
Я хотел бы добиться того же результата с помощью веб-хостинга с помощью следующий javascript.
post('https://worker-aws-us-east-1.iron.io/2/projects/PROJECTKEY/tasks/webhook?code_name=CODENAME&oauth=OAUTH', {
payload: {
"tasks": [{
"code_name": "firebase_email_webhook",
"payload": "{u'env': u'production'}"
}]
}
})
function post(path, params, method) {
method = method || "post"; // Set method to post by default if not specified.
var form = document.createElement("form");
form.setAttribute("method", method);
form.setAttribute("action", path);
for (var key in params) {
if (params.hasOwnProperty(key)) {
var hiddenField = document.createElement("input");
hiddenField.setAttribute("type", "hidden");
hiddenField.setAttribute("name", key);
hiddenField.setAttribute("value", params[key]);
form.appendChild(hiddenField);
}
}
document.body.appendChild(form);
form.submit();
}
Вызов webhook работает нормально, но проблема в том, что я получаю следующее сообщение об ошибке:
Traceback (most recent call last):
File "firebase_email_webhook.py", line 32, in <module>
payload = json.loads(f.read())
File "/usr/lib/python2.7/json/__init__.py", line 326, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded