2016-08-31 92 views
0

使用導入,我可以使用這個模塊的iPhone,但不適用於蘋果手錶app.I也想用這個庫來編寫蘋果手錶應用程序。可能嗎?如果可能的話,如何? 如果不可能,請您提供替代方案嗎? HTTP請求爲iPhone蘋果手錶http請求

在蘋果手錶
import Alamofire 
Alamofire.request(.GET, requestUrl, headers: self.headers(), encoding:.JSON).responseJSON 
{ 
    (rJ) -> Void in 

    let data = rJ.result.value 

    let err = rJ.result.error 

} 

回答

2

樣品Http請求

由於事先

簡單的例子。

包括以下關鍵的iPhone應用程序的Info.plist和watchkit延伸的Info.plist

<key>NSAppTransportSecurity</key> 
<dict> 
    <key>NSAllowsArbitraryLoads</key> 
    <true/> 
</dict> 

在你莢文件,添加Alamofire這兩個目標,即iPhone和watchkit擴展

source 'https://github.com/CocoaPods/Specs.git' 
use_frameworks! 

target 'MyApp' do 
    platform :ios, '9.0' 
     pod 'Alamofire', '~> 3.4' 
end 

target 'MyApp WatchKit Extension' do 
    platform :watchos, '2.0' 
    pod 'Alamofire', '~> 3.4' 
end 

創建你的Network.swift文件,並將「Target Membership」添加到iPhone目標和watchkit擴展目標。

樣品Network.swift會,

import Foundation 
import Alamofire 

struct NetworkService 
{ 
    func executeRequest(method: Alamofire.Method,parameters:String:AnyObject]?, URLString:URLStringConvertible, completionHandler: Response<AnyObject, NSError> -> Void) 
    { 
    Alamofire.request(method, URLString, parameters: parameters,encoding: .JSON, headers: nil) .responseJSON { response in 
     completionHandler(response) 
    } 
    } 
} 

現在在你的代碼什麼地方可以調用此方法,

var sampleNWRequest:NetworkService = NetworkService() 
sampleNWRequest.executeRequest(.GET, parameters: nil, URLString:"your url", completionHandler: { response in 
    print(response.result.value) 
) 

希望這有助於!

+0

非常感謝! –

+0

歡迎! 但請記住,蘋果正在強制使用HTTPS請求。 ATS將於2017年1月1日強制執行,適用於所有Apple平臺,包括watchOS – vkhemnar

+0

爲擴大上述評論,Apple已撤銷授權ATS的決定,直至另行通知:https://developer.apple.com/news/?id = 12212016b –