我有nn.sh
#/bin/sh
cd /var/www/html
/usr/bin/curl 'https://web-api.wtnnip.com/app' \
-H 'authority: web-api.wtnnip.com' \
-H 'accept: */*' \
-H 'accept-language: ro-RO,ro;q=0.9,en-US;q=0.8,en;q=0.7' \
-H 'content-type: application/json' \
-H 'origin: https://www.wtnnip.com' \
-H 'referer: https://www.wtnnip.com/ro-RO/non-professional' \
-H 'sec-ch-ua: "Google Chrome";v="105", "Not)A;Brand";v="8", "Chromium";v="105"' \
-H 'sec-ch-ua-mobile: ?0' \
-H 'sec-ch-ua-platform: "Linux"' \
-H 'sec-fetch-dest: empty' \
-H 'sec-fetch-mode: cors' \
-H 'sec-fetch-site: same-site' \
-H 'user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36' \
--compressed
如果我执行这个文件,它就可以正常工作。如果我复制cURL命令并在终端中运行,它就可以正常工作。正常工作意味着我收到了json集合。
但是,如果我设置crontab来运行这个文件,或者我从PHP用exec或passthru运行这个文件,我会收到这个错误:
{"errors" : [ {
"message" : "Invalid JSON payload in GraphQLAuth POST request.",
"errorType" : "MalformedHttpRequestException"
} ]
}
我也尝试直接从PHP编写代码并使用cURL,但收到了同样的错误。
我如何从cron或php运行这个?谢谢!
勒:
1.我使用Debian 11、PHP 7.4和cURL 7.74
1.我用bash作为shell,我也尝试用#/bin/bash
已解决
!/bin/bash出现在第一行
我忘了感叹号。
感谢Ulrich Eckhardt提供的光明!
1条答案
按热度按时间qhhrdooz1#
如果你想尝试PHP,试试这个: