Исходник Гайд Асинхронные HTTP запросы в MoonLoader

Статус
В этой теме нельзя размещать новые ответы.

Jason2222

Известный
180
3
Lua:
args.headers = {['content-type'] = 'application/json'}
Чет я тупенький) не могу разобраться. Не работает, выдает ошибку, мол, table имеет тип таблицы
Lua:
local args = {}
            args.data = "data="..table
            args.headers = {
            ['content-type']='application/json'
            }
            async_http_request("POST", url, args,
            function(response)
                print(response.text)
            end,
            function(err)
                print(err)
            end)
 
Последнее редактирование:

Pakulichev

Software Developer & System Administrator
Друг
1,789
2,133
Чет я тупенький) не могу разобраться. Не работает, выдает ошибку, мол, table имеет тип таблицы
Lua:
local args = {}
            args.data = "data="..table
            args.headers = {
            ['content-type']='application/json'
            }
            async_http_request("POST", url, args,
            function(response)
                print(response.text)
            end,
            function(err)
                print(err)
            end)
Так ты LUA Table в JSON-формат перегони с помощью encodeJson
 

tlwsn

Известный
537
85
Так какую функцию лучше юзать, та что через lanes или effil?
 

Di3

Участник
432
20
[01:02:13.336389] (error) Script: resource unavailable try again: resource unavailable try again
stack traceback:
[C]: in ?
...s\79196\Desktop\MEETEN ORIGINAL GTA\moonloader\test.lua:6583: in function 'asyncHttpRequest'
...s\79196\Desktop\MEETEN ORIGINAL GTA\moonloader\test.lua:2539: in function <...s\79196\Desktop\MEETEN ORIGINAL GTA\moonloader\test.lua:2531>

Lua:
    gourl={}
    gourl.data = "report="..tonumber(reportpizda).."&array="..encodeJson(adminmass)..'&go="go"'
    gourl.headers = {
        ['content-type']='application/x-www-form-urlencoded'
    }
asyncHttpRequest('POST', Ссылка', gourl, nil,nil)


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
От чего эта ошибка. Рандомная
 

sanders

Потрачен
253
126
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
  • Нравится
Реакции: Di3

Di3

Участник
432
20
делаешь запрос и получаешь текст через response.text сука читать научись
Ты когда то задавал такие же тупые вопросы, научился? Молодец, будь добр помочь или не тыкать клавиши на этом форуме

как сделатб так шо бы скрипт брал инфу с сайта и выводил ее в чат?
Lua:
asyncHttpRequest("GET", 'ссылка', nil,
    function(response)
print(response.text) --  выводим инфу от сайта 
    end,
    function(err)
    print(err) -- выводим ошибку в случае чего
    end)
 
  • Нравится
Реакции: sanders и #Northn

Frapsy

Известный
Проверенный
393
226
Ты когда то задавал такие же тупые вопросы, научился? Молодец, будь добр помочь или не тыкать клавиши на этом форуме
Любишь кататься - люби и саночки возить. На очень много вопросов отвечали уже по 100500 раз, достаточно открыть поиск по форуму(да хотя-бы по этой теме), но нет, предпочитают люди быть ленивыми жопами и ничего не делать самим, по этому, он и сгорел на него.
 

Di3

Участник
432
20
Любишь кататься - люби и саночки возить. На очень много вопросов отвечали уже по 100500 раз, достаточно открыть поиск по форуму(да хотя-бы по этой теме), но нет, предпочитают люди быть ленивыми жопами и ничего не делать самим, по этому, он и сгорел на него.
Не всем дано, не сложно - помоги, сложно, тогда зачем отвечать огрызаясь?

как сделатб так шо бы скрипт брал инфу с сайта и выводил ее в чат?
Попытка №2. Спасибо FYP за компиляцию библиотеки.

Собственно, протестировал effil. Вроде как, все работает, но на "длинных расстояниях" тесты не проводились.

Пример вызова:

Lua:
-- С функциями обработки ответа и ошибок.
asyncHttpRequest('GET', 'https://www.google.com/robots.txt', nil --[[Аргументы запроса]],
         function(response)
            --
         end,
         function(err)
            --
         end)

-- Без функций обработки ответа и ошибок. Можно добавить как функцию обработки ответа так и функцию обработки ошибок, но можно обойтись и без них, как показано в примере ниже.
asyncHttpRequest('GET', 'https://www.google.com/robots.txt', nil --[[Аргументы запроса]], nil --[[Функция обработки ответа]], nil --[[Функция обработки ошибок]])

Lua:
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

Установка: содержимое архива разархивировать в папку lib
Вот крч, тут по пальцам рассказано
 

штейн

Известный
Проверенный
1,001
687
Не всем дано, не сложно - помоги, сложно, тогда зачем отвечать огрызаясь?
потому что задавать вопрос ответ на который написан в самой теме это пиздец тупость, ему было банально лень прочитать тему за что я ему и написал чтобы он учился читать а не задавал такие тупые вопросы
ещё до чего доебешься гений?
 
Статус
В этой теме нельзя размещать новые ответы.