Команды POST и GET CURL в сценарии оболочки - PullRequest
0 голосов
/ 27 ноября 2018

Я создал сценарий оболочки, который содержит две функции для вызова команды curl.первая функция возвращает токен API, и я хочу использовать токен, сгенерированный из первой функции (callPOSTService) во вторую функцию (callGETService), чтобы получить подробности.

 #!/bin/sh    
    HEADER_CONTENT_TYPE='Content-Type: application/x-www-formurl'
    CREDENTIALS='grant_type=password&username=usr01&password=abc@123'
    AUTHS='Authorization'
    BEAR='Bearer'
    function callPOSTService {
        echo "Calling URI (POST): "
        echo '------------------------'
        echo 'Token Generated '
        echo '-------------------------'
        curl -X POST -H "@{HEADER_CONTENT_TYPE}" -d "${CREDENTIALS}" -o tmp.txt "http://someaddress.com/api/oauth/token"
    }
    function callGETService {
    curl -X GET -H 'Authorization':'Bearer AAEAAEn898D6gpqh8hiVqIIlfUBW -o test_curl "http://someaddress.com/api/workflows/id"
    }
    callPOSTService
    callGETService 

вывод первой функции (callPOSTService).

{
  "access_token": "AAEAAEn898D6gpqh8hiVqIIlfUBW,"token_type": "bearer"
} 

Я хочу извлечь часть строки токена, например «AAEAAEn898D6gpqh8hiVqIIlfUBW», и добавить «Authorization»: «Bearer» во вторую функцию, поэтому она должна выглядеть следующим образом.

curl -X GET -H 'Authorization':'Bearer AAEAAEn898D6gpqh8hiVqIIlfUBW  "http://someaddress.com/api/workflows/id".

Есть идеи, как этого добиться?

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