[Lua] Отправка POST запроса с JSON объектом

Alan1

Участник
Автор темы
57
4
Версия SA-MP
  1. Любая
  2. Другая
Здравствуйте!

Использую следующий метод для отправки запроса:

код:
local effil = require 'effil'

function asyncHttpRequest(method, url, args, resolve, reject)
   local request_thread = effil.thread(function (method, url, args)
      local requests = require 'requests'
      local result, response = pcall(requests.request, method, url, args)
      if result then
         response.json, response.xml = nil, nil
         return true, response
      else
         return false, response
      end
   end)(method, url, args)
   -- Если запрос без функций обработки ответа и ошибок.
   if not resolve then resolve = function() end end
   if not reject then reject = function() end end
   -- Проверка выполнения потока
   lua_thread.create(function()
      local runner = request_thread
      while true do
         local status, err = runner:status()
         if not err then
            if status == 'completed' then
               local result, response = runner:get()
               if result then
                  resolve(response)
               else
                  reject(response)
               end
               return
            elseif status == 'canceled' then
               return reject(status)
            end
         else
            return reject(err)
         end
         wait(0)
      end
   end)
end

Если верно понимаю, то тело запроса следует отправлять в аргументы, т.е.:

код:
local json = require "json"

local data = {
    ["name"] = "John Dou",
    ["age"] = 12
}
local encode = json:encode(data)

asyncHttpRequest('POST', "https://google.com", encode,
    function(response)
        sampAddChatMessage(response.text, -1)
    end,
    function(err)
        --
    end
)

Но к сожалению никакого результата. Подскажите пожалуйста верно ли я передаю JSON в тело запроса??
Заранее спасибо за помощь!