Запрос с использованием Curl (Windows 10) в Matlab выдает сообщение об ошибке - PullRequest
0 голосов
/ 04 января 2019

Я отправляю команду curl на сервер, но получаю сообщение об ошибке, которого я не понимаю.

Запрос, который мне нужно отправить на сервер:

body=$(cat << EOF
{
  "order": {
    "units": "100",
    "instrument": "EUR_USD",
    "timeInForce": "FOK",
    "type": "MARKET",
    "positionFill": "DEFAULT"
  }
}
EOF
)

curl \
  -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TOKEN>" \
  -d "$body" \
  "https://api-fxtrade.oanda.com/v3/accounts/<ACCOUNT>/orders"

ЧтоЯ перевожу это в команду curl, например:

curlcmd = 'curl -s \ -X POST \ -H "Тип содержимого: application / json" \ -H "Авторизация: Bearer" \-d "{" order ": {" units ":" 100 "," instrument ":" EUR_USD "," timeInForce ":" FOK "," type ":" MARKET "," positionFill ":" DEFAULT "}}"\" https://api -fxpractice.oanda.com / v3 / accounts / AccountID / orders"'

Я отправляю команду через resp = system (curlcmd) через Matlab на сервер,Я получаю сообщение об ошибке:

errorMessage: 'Недопустимый JSON, ParseErrorCode: 4, Сообщение: отсутствует имя для члена объекта.'

Любая идея, что это значит и как я могурешить это?Я использую Matlab в Windows 10, поэтому curl является частью Windows 10.

Ответ должен представлять собой размещенный ордер и данные ответа сделки.

1 Ответ

0 голосов
/ 04 января 2019

JSON, похоже, неправильно указан в кавычках.

Попробуйте:

curl -s -X POST -H "Content-Type: application/json" -H "Authorization: Bearer " -d "{\"order\": {\"units\": \"100\", \"instrument\": \"EUR_USD\", \"timeInForce\": \"FOK\", \"type\": \"MARKET\", \"positionFill\": \"DEFAULT\" }}" "https://api-fxpractice.oanda.com/v3/accounts/AccountID/orders" 

Тест с прокси

С соответствующимэкранирование кавычек JSON, как показано в приведенной выше командной строке CURL, JSON выглядит корректно при просмотре в прокси HTTPS:

proxy output

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...