2017-03-22 22 views
0

これをSwiftに変換する際に問題が発生しました。CURLをSwiftに変換する

curl https://api.stripe.com/v1/accounts \ 
-u {PLATFORM_SECRET_KEY}: \ 
-d country=US \ 
-d managed=true 
+0

。これらの要求は、バックエンドサーバーから送信する必要があります。 (これは、Stripeがこれらの要求に対してSwiftサンプルを提供しない理由です) – Ywain

答えて

1

あなたはこのようなものを使用することができるはず:あなたは秘密鍵をさらす危険にさらすだろうとして、モバイルアプリから直接あなたの秘密APIキーとAPIリクエストを送信するべきではありません

let sessionConfig = URLSessionConfiguration.default 
    let session = URLSession(configuration: sessionConfig, delegate: nil, delegateQueue: nil) 

    guard let URL = URL(string: "https://api.stripe.com/v1/accounts") else {return} 
    var request = URLRequest(url: URL) 
    let params = "managed=true&country=us" 
    request.httpBody = params.data(using: .utf8, allowLossyConversion: true) 

    /* Start a new Task */ 
    let task = session.dataTask(with: request, completionHandler: { (data: Data?, response: URLResponse?, error: Error?) -> Void in 
     if (error == nil) { 
      // Success 
      let statusCode = (response as! HTTPURLResponse).statusCode 
      print("URL Session Task Succeeded: HTTP \(statusCode)") 
     } 
     else { 
      // Failure 
      print("URL Session Task Failed: %@", error!.localizedDescription); 
     } 
    }) 
    task.resume() 
+0

ありがとう、ありがとう!私には1つの質問がありますが、{PLATFORM_SECRET_KEY}はどこに行くのですか? URL文字列に追加するだけですか? @ Fahim –

+0

その部分は認証メカニズムに依存します。通常、プレーンテキストではなくエンコードされたパスワードを送信すると思います。 https://paw.cloud/ 上記が役に立った場合は、「正しい」と答えることができますか? – Fahim

関連する問題