mirror of
https://github.com/AmberGraceRblx/luau-promise.git
synced 2025-04-24 15:50:01 +00:00
Merge branch 'master' of https://github.com/evaera/roblox-lua-promise
This commit is contained in:
commit
4f55aa52bf
1 changed files with 8 additions and 7 deletions
15
README.md
15
README.md
|
@ -30,22 +30,23 @@ local HttpService = game:GetService("HttpService")
|
|||
-- Ideally, you do this once per project per async method that you use.
|
||||
local function httpGet(url)
|
||||
return Promise.new(function(resolve, reject)
|
||||
local ok, result = pcall(HttpService.GetAsync, HttpService, url)
|
||||
local result = HttpService:JSONDecode(HttpService:GetAsync(url))
|
||||
|
||||
if ok then
|
||||
resolve(result)
|
||||
if result.ok then
|
||||
resolve(result.data)
|
||||
else
|
||||
reject(result)
|
||||
reject(result.error)
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
-- Usage
|
||||
httpGet("https://google.com")
|
||||
httpGet("https://some-api.example")
|
||||
:andThen(function(body)
|
||||
print("Here's the Google homepage:", body)
|
||||
print("Here's the web api result:", body)
|
||||
end)
|
||||
:catch(function(err)
|
||||
warn("We failed to get the Google homepage!", err)
|
||||
warn("Web api encountered an error:", err)
|
||||
end)
|
||||
```
|
||||
|
||||
|
|
Loading…
Reference in a new issue