2016-10-27 11 views
0

私は迅速かつネットワーキングを学ぼうとしています。私はwww.google.comへの簡単なHTTPリクエストを作成しており、実行されていないようです。これは私が書いたコードですSwift 3 HTTPリクエストが通過しない

let url = URL(string: "www.google.com") 
var request = URLRequest(url: url!) 
let task = URLSession.shared.dataTask(with: request) { data, response, error in 
     print(response) 
    } 

これは実行されていないようです。私はオンラインで見て、Swift 3のためにそこにいません。どのように私は迅速に3のHTTP要求をすることができますか?私は間違って何をしていますか?

+0

「http」リクエストを実際に作成することはできません。 'https:'を使う必要があります。 – matt

答えて

0

task.resume()を忘れました。

let url = URL(string: "http://www.google.com:80/") 
var request = URLRequest(url: url!) 
let task = URLSession.shared.dataTask(with: request) { data, response, error in 
    print(response) 
} 
task.resume() 

ああ。ここでhttps://またはhttp://


は、このために私の全体の遊び場です。ポートの使用方法を示すように更新

//: Playground - noun: a place where people can play 

import UIKit 
import PlaygroundSupport 
PlaygroundPage.current.needsIndefiniteExecution = true 

let url = URL(string: "http://www.google.com:80/") 
var request = URLRequest(url: url!) 
let task = URLSession.shared.dataTask(with: request) { data, response, error in 
    print(response) 
} 
task.resume() 

+0

どうすれば特定のポートにすることができますか? –

+0

@JonathanHsuホスト名の後に ':'を使います。 '" http://www.google.com:80/ "はホスト' www.google.com'のポート「80」を使用します。 –

0

task.resume()を忘れましたが、まだアプリ転送セキュリティドメインの例外を追加することを忘れている可能性があります。まだお持ちでない場合は、Info.plistに追加してください。

<key>NSAppTransportSecurity</key> 
<dict> 
    <key>NSExceptionDomains</key> 
    <dict> 
     <key>google.com</key> 
     <dict> 
      <key>NSIncludesSubdomains</key> 
      <true/> 
      <key>NSExceptionAllowsInsecureHTTPLoads</key> 
      <true/> 
     </dict> 
    </dict> 
</dict> 
関連する問題