Curl Публиковать данные из файла .txt - PullRequest
1 голос
/ 10 октября 2019

Здравствуйте, мой код сценария bash. Я пытаюсь опубликовать несколько сообщений из файла, используя функцию post

Однако, когда я пытаюсь использовать этот код, он говорит:
{"message": "Невозможно отправитьпустое сообщение "," code ": 50006}

#!/bin/bash

SENDDATA="1.txt"
dir1=$SENDDATA
read dir1
curl -v \
-H "Authorization: " \
-H "User-Agent: myBotThing (http://some.url, v0.1)" \
-H "Content-Type: application/json" \
-H "Referer: http://example.com" \
-X POST \
-d --data '{"content":".$SENDDATA."}' \
https://api.example.com/messages

Я пытаюсь изменить данные публикации '{" content ":" blabla "}' \

с файлом1. текст сообщений из нескольких слов.

Я думаю, что-то не так!

1 Ответ

0 голосов
/ 10 октября 2019

Ваш скрипт не читает данные из файла. Как предложил @garlicFrancium, вам нужно как-то прочитать файл. У вас также есть дополнительные -d в ваших аргументах.

SENDDATA="1.txt"
curl -v \
        -H "Authorization: " \
        -H "User-Agent: myBotThing (http://some.url, v0.1)" \
        -H "Content-Type: application/json" \
        -H "Referer: http://example.com" \
        --data "{\"content\":\"$(cat "$SENDDATA")\"}" \
        https://api.example.com/messages

1.txt:

foo bar baz

Замена URL-адреса на localhost:8080 и запуск nc -l 8080:

POST / HTTP/1.1
Host: localhost:8080
Accept: */*
User-Agent: myBotThing (http://some.url, v0.1)
Content-Type: application/json
Referer: http://example.com
Content-Length: 25

{"content":"foo bar baz"}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...