2015-07-21 4 views
-1

Я хочу использовать pushbullet API (v2/толчок) для выталкивания сообщения, но если я включаю символ «%» внутри заголовка или тела сервер дает мне следующую ошибку:pushbullet декодирования апи (v2/толчок)

{"error":{"type":"invalid_request","message":"Failed to decode urlencoded POST form body.","cat":"~(=^‥^)ノ"}}

Как я могу исправить эту проблему?

request: curl https://api.pushbullet.com/v2/pushes -k -u token: -d type=note -d title="%test" -d body="%%test" -X POST 

ответ

0

x-www-form-urlencoded не самый простой формат. Вероятно, вы можете использовать curl с параметром --data-urlencode. Вы также можете попробовать процесс кодирования значений с помощью этого инструмента: http://meyerweb.com/eric/tools/dencoder/

Это должно производить urlencoded выхода, например, ваш запрос будет выглядеть как:

curl -u token: https://api.pushbullet.com/v2/pushes --header "Content-Type: application/x-www-form-urlencoded" --data-binary 'type=note&title=TITLETEXT&body=%25BODYTEXT' 
+0

я сделал тест, такой как [свернуться -u фишки: https: //api.pushbullet.com/v2/pushes --data-urlencode 'type = note & title = TITLETEXT & body =% BODYTEXT'] он также дает ошибку T. T – jinah

+0

Я хочу использовать этот запрос в скрипте. поэтому я не могу использовать http://meyerweb.com/eric/tools/dencoder/ эту опцию – jinah

+0

Вот как использовать -data-urlencode, вам нужен один -data-urlencode для каждой пары значений ключа, например --data -urlencode "type = note" --data-urlencode "body =% BODYTEXT" Я думаю. Я не использую завиток. –