84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
后台 Api 中单个参数的时候没有指定参数名,而 Alamofire 中的 parameters 是字典类型的。我尝试着 param = ["": "参数"] 发现是不行的。在 AFN 中因为参数是 id 类型的,所以可以直接将一个字符串扔进去。求解 Alamofire 中怎么做 T T (后台有很多这样的 Api,安卓那边都可以,所以没必要改 Api 了。。。。)
param = ["": "参数"]
认证高级PHP讲师
scheme://host/path?key=value&key=value在get方式中你傳入的parameters到後邊都是處理成上邊的key=value這樣的形式伺服器拿到這樣的url 然後根據key去取相應的value
其實AFN在處理NSString的param時url為scheme://host/path?null=value伺服器當且僅當在單一參數可以這樣處理吧 反正拿到的value就是需要的和key無關
從上邊的邏輯分析伺服器處理url有2種情況一種只要只有一個value就直接取它的值那麼你隨便給個key試試看了另一種只在key為null而value不為null下才觸發那麼用param = @{[NSNull null]: param} 試試看還不行就去看看代碼alamofire是怎麼把parameters處理成query的查看下完整的url 確定是否是alamofire過濾了(ps 沒寫過伺服器程式碼和alamofire 很多是猜測僅供參考)
不指定參數名稱,可能就是把這個當作參數,例如那種將整個請求的上送參數當作一個進行處理xml,json來處理的。 alamofire沒用過,你可以找下有沒有上送一個json字串的那種方式,也是同樣沒有定義參數名稱的。
Alamofire 的 request 方法裡, parameters 只能是個字典,這有點不靈活了。不過你可以嘗試用下面這個函數:
request(URLRequest: URLRequestConvertible) -> Request
自己建立一個 NSMutableURLRequest,設定它的 header, body, 然後傳給上面那個 request 函數。自己建立 NSMutableURLRequest 是參數可以很靈活,不要求非得是字典。
我最後的處理是直接在URL後面拼接這個參數值 直接”path+?參數“ 然後轉成UTF8 。一般來說直接傳參數的都是get類型的。
請問樓主解決了沒有,我遇到了跟你一樣的問題。很困擾。如果您已經解決了問題。請聯絡我一下。 QQ:664071973
scheme://host/path?key=value&key=value
在get方式中你傳入的parameters到後邊都是處理成上邊的key=value這樣的形式
伺服器拿到這樣的url 然後根據key去取相應的value
其實AFN在處理NSString的param時url為scheme://host/path?null=value
伺服器當且僅當在單一參數可以這樣處理吧 反正拿到的value就是需要的和key無關
從上邊的邏輯分析伺服器處理url有2種情況一種只要只有一個value就直接取它的值那麼你隨便給個key試試看了另一種只在key為null而value不為null下才觸發那麼用param = @{[NSNull null]: param} 試試看還不行就去看看代碼alamofire是怎麼把parameters處理成query的查看下完整的url 確定是否是alamofire過濾了
(ps 沒寫過伺服器程式碼和alamofire 很多是猜測僅供參考)
不指定參數名稱,可能就是把這個當作參數,例如那種將整個請求的上送參數當作一個進行處理xml,json來處理的。
alamofire沒用過,你可以找下有沒有上送一個json字串的那種方式,也是同樣沒有定義參數名稱的。
Alamofire 的 request 方法裡, parameters 只能是個字典,這有點不靈活了。不過你可以嘗試用下面這個函數:
自己建立一個 NSMutableURLRequest,設定它的 header, body, 然後傳給上面那個 request 函數。自己建立 NSMutableURLRequest 是參數可以很靈活,不要求非得是字典。
我最後的處理是直接在URL後面拼接這個參數值 直接”path+?參數“ 然後轉成UTF8 。一般來說直接傳參數的都是get類型的。
請問樓主解決了沒有,我遇到了跟你一樣的問題。很困擾。如果您已經解決了問題。請聯絡我一下。 QQ:664071973