Safe Haskell | None |
---|
- data APIRequest apiName responseType
- = APIRequestGet {
- _url :: String
- _params :: SimpleQuery
- | APIRequestPost {
- _url :: String
- _params :: SimpleQuery
- | APIRequestPostMultipart { }
- = APIRequestGet {
Documentation
data APIRequest apiName responseType Source
API request. You should use specific builder functions instead of building this directly.
For example, if there were a SampleApi
type and a builder function which named sampleApiRequest
.
In addition,
is a instance of both of APIRequest
SampleApi [SampleId]HasCountParam
and HasMaxIdParam
.
dataSampleApi
typeSampleId
=Integer
instanceHasCountParam
(APIRequest
SampleApi
[SampleId
]) instanceHasMaxIdParam
(APIRequest
SampleApi
[SampleId
])sampleApiRequest
::APIRequest
SampleApi
[SampleId
]sampleApiRequest
=APIRequestGet
"https://api.twitter.com/sample/api.json"def
We can obtain request params from
:
APIRequest
SampleApi [SampleId]
>>>
sampleApiRequest ^. params
[]
And update request parameters.
>>>
(sampleApiRequest & count ?~ 100 & maxId ?~ 1234567890) ^. params
[("max_id","1234567890"),("count","100")]>>>
(sampleApiRequest & count ?~ 100 & maxId ?~ 1234567890 & count .~ Nothing) ^. params
[("max_id","1234567890")]
APIRequestGet | |
| |
APIRequestPost | |
| |
APIRequestPostMultipart | |