[英]How to pass raw JSON Body with POST request in Moya request
我正在使用
Moya<\/code>庫在我的項目中調用 api。
現在是在正文中通過 POST 請求傳遞原始 json 對象(將多個對象作為單個對象)所需的 API 之一。 它在郵遞員中工作正常。
檢查下面的屏幕截圖,
還要檢查原始正文 json,
{
"geometry": {
"location": {
"lat": "22.7195687",
"lng": "75.8577258"
}
},
"icon": "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/geocode-71.png",
"name": "Indore",
"photos": [
{
"photo_reference": "Aap_uECCOLowEnJ2yBUzF0nwRjV5jBx2_JWsofVosuLVvlr-ClIMHNR5-QGIe4phK-3_Bj_laHD_XH_LvlmGDzm33KvxuO1XzaZocxTLOVUdSGI3_otXvpx_FbuzmwiibZiylQEMkekTLKbLdXjK8H3w10nOcoJE-InDVvf5P7Cvyum_kk9k"
}
],
"place_id": "ChIJ2w1BG638YjkR9EBiNdrEbgk",
"reference": "ChIJ2w1BG638YjkR9EBiNdrEbgk",
"types": [
"locality",
"political"
],
"vicinity": "Indore"
},
{
"geometry": {
"location": {
"lat": "22.7429365",
"lng": "75.8867267"
}
},
"icon": "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/generic_business-71.png",
"name": "Visual Maker",
"photos": [
{
"photo_reference": "Aap_uED84yCmvAirxt-dSdPPSE3O_eBSunEiSOM1Uzr0kNNMiJBVvPtBuCuwck2Ek0CDg7S8JP09Iva3Rjhq63O1Tyql_CTeMRF_GWC19QfZUFwwvadcRbfLWo6Wqn4ndCTCh5A6RV212PJcB0HZqe6YV7FphiV_XjkP9pCvk5JLDKNrvOXz"
}
],
"place_id": "ChIJGwLEIlr9YjkRnr8uTQiQ8KU",
"reference": "ChIJGwLEIlr9YjkRnr8uTQiQ8KU",
"types": [
"university",
"general_contractor",
"point_of_interest",
"establishment"
],
"vicinity": "behind Anop Cinema, K/112, LIG Colony, Indore"
},
}
要在請求正文中發送復雜的參數,您可以使用 Moya 函數:
requestCompositeData(bodyData: Data, urlParameters: [String: Any])
Moya 對此功能有此評論:
一個帶有數據的請求體,結合 url 參數
所以這個函數允許我們在請求正文中發送任何內容。
例如,這樣的事情是一個很好的方法:
import Moya
import SwiftyJSON
// Data task in MoyaProvider
var task: Task {
switch self {
case .categoriesAndSubCategories:
let graphQLJson = JSON([
[
"query": "query categories { categories { id, title, description, slug, adsStats, subcategories { id, title, slug } } }"
]
])
return .requestCompositeData(bodyData: try! graphQLJson.rawData(), urlParameters: [:])
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.