У меня есть рабочий файл .php на удаленном сервере. Если я запускаю следующее:Как перевести эту команду curl на lua?
curl -F "USER=user" -F "PASS=pass" -F "TIME=12345" -F "[email protected]" http://myurl.com/create.php
он вернется:
{"PASS":"pass","USER":"user"}
Однако я пытаюсь использовать один и тот же код с новым интерфейсом, запрограммированного в Lua, и пока она связаться с сервером , он также возвращает «Недопустимый запрос». Я установил .php для возврата «Недействительный запрос», если правильные значения POST не установлены.
Я редактировал .php, чтобы вернуть то, что вход получил был, и это ответ:
{"PASS":null,"USER":null}
Мой .php код, как правило, следующим образом:
if (isset($_POST["USER"]) && isset($_POST["PASS"]) && isset($_POST["TIME"]) && isset($_POST["EMAIL"])){
[...]do stuff[...]
}else{
sendResponse('Invalid request');
}
И код Lua:
require "socket.http"
function curlCreate()
response= socket.http.request("http://myurl.com/create.php","USER=user", "PASS=pass", "TIME=12345", "[email protected]")
print(response)
end
Я считаю, что это, возможно, флаг -F-флаг, сбрасывающий передачу lua, но документ ation lua curl-ing немного редок и старых.
Заранее благодарим за любые предложения!
ОТВЕТ ОПИСАНИЕ: Первый рекомендуемый метод ...
response= socket.http.request("http://someurl.com", "USER=user&PASS=pass&TIME=12345&[email protected]")
... действительно работают!
Вы можете просто написать 'if (isset ($ _ POST [" USER "], $ _POST [" PASS "], $ _POST [" TIME "], $ _POST [" EMAIL "])) {' – hjpotter92
Кроме того, запрос должен быть следующим: 'socket.http.request {url =" http://myurl.com/create.php?USER=user&PASS=pass&TIME=12345&[email protected] ", method = 'POST'} ' – hjpotter92