2016-05-09 12 views
1

GoogleShortener APIを使用して短いバージョンのURLを取得しようとしています。私はAFNetworking 3.0を使用していますが、私はこのエラーを取得 :物乞いのNSProxy 『Google URL短縮URL iOS

let manager = AFHTTPSessionManager() 
    manager.requestSerializer = AFJSONRequestSerializer() 
    let params = ["longUrl": "MYURL"] 


    manager.POST("https://www.googleapis.com/urlshortener/v1/url?key=MYKEY", parameters: params, success: {(operation: NSURLSession!,responseObject: AnyObject!) in 
     println("JSON" + responseObject.description) 
     }, 


       failure: { (operation: NSURLSession!,error: NSError!) in 
     println("Error while requesting shortened: " + error.localizedDescription) 
    }) 

それはライン上で強調表示されている『のprintln( 『JSON』 + responseObject.description』) 「ANYOBJECTはのサブタイプではありません』 「記述」の

+0

分かりやすくするためには、構文エラーを取得していますか?それとも、コードが実行されているときにエラーですか? – Ollie

+1

@Ollieタイプのエラーはコンパイル時であり、実行時ではありません。 – Moritz

+0

構文エラーです。私はAppDelegateのAPIキーを持っていない、それは問題になることができますか? – Magnifique

答えて

0

AFNetworking 3を使用しているときに同じエラーが発生しました。ドキュメントに変更があったことが示されました。しかし、私が実行できたコードはここにあります。それがうまくいくことを望みます。

let manager = AFHTTPSessionManager() 
manager.requestSerializer = AFJSONRequestSerializer() 
let params = ["longUrl": "MYURL"] 


manager.POST("https://www.googleapis.com/urlshortener/v1/url?key=MYKEY", parameters: params, success: {(operation: NSURLSessionDataTask!,responseObject: AnyObject?) in 
    print("JSON" + (responseObject?.description)!) 
    }, 


      failure: { (operation: NSURLSessionDataTask?,error: NSError) in 
    print("Error while requesting shortened: " + error.localizedDescription) 
}) 
0

このURLを参照してください。このコード を使用します。http://cungcode.com/how-to-use-google-url-shortener-api-ios/

let manager = AFHTTPRequestOperationManager() 
    manager.requestSerializer = AFJSONRequestSerializer() 
    let params = ["longUrl": "YOUR_URL] 
    manager.POST("https://www.googleapis.com/urlshortener/v1/url?key=MYKEY", parameters: params, success: {(operation: AFHTTPRequestOperation!,responseObject: AnyObject!) in 
     println("JSON: " + responseObject.description) 
      }, failure: { (operation: AFHTTPRequestOperation!,error: NSError!) in 
     println("Error: " + error.localizedDescription) 
    }) 
+0

swift 3.0互換? – dylan

+0

いいえ、その2.2と互換性があります。それを追加して、自動的に変換されるように警告を解決することができます。 – Pushkraj