Невозможно POST запрос к серверу, используя CURL в BASH - PullRequest
0 голосов
/ 06 ноября 2019

Я пытался запустить скрипт BASH, который отправляет запрос на сервер SMS, и при успешном выполнении на указанный номер мобильного телефона приходит сообщение. Сценарий, как показано ниже:

curl -k -X POST "http://192.168.10.3/u=admin&h=452ba065ebd1723598a51c7eca11d362&op=pv&to=1234567891&msg=Hello+to+all"

Выше сценарий работает нормально. На мобильный номер 1234567891 поступает сообщение «Привет всем». Однако этот номер жестко запрограммирован в URL. В реальном сценарии номер мобильного телефона будет доступен в переменной, а SMS будет отправлено на номер мобильного телефона, доступный в этой переменной.

Я пробовал такие сценарии, как:

mobile_number="1234567891"
curl -k -X POST "http://192.168.10.3/u=admin&h=452ba065ebd1723598a51c7eca11d362&op=pv&to=$mobile_number&msg=Message+From+world"

и

x="http://192.168.10.3/u=admin&h=452ba065ebd1723598a51c7eca11d362&op=pv&to="
x+="1234567891
x+=&msg=Hello+to+all"
curl -k -X POST $x

Однако мне не удалось успешно их выполнить. Было бы очень полезно, если бы кто-то мог помочь мне с синтаксисом.

1 Ответ

0 голосов
/ 06 ноября 2019

Попробуйте этот принцип, bash - это язык, отличный от c ++ или около того: -):

#!/bin/bash
to="1234567891"
msg="Hello+to+all"
u="admin"
hash="452ba065ebd1723598a51c7eca11d362"
op="pv"
ip="192.168.10.3"
url="http://${ip}/u=admin&h=${hash}&op=${op}&to=${to}&msg=${msg}"

echo ${url}

Than: curl -k -X POST $url should work fine.

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