2017-11-23 4 views
-4

アプリ用のレシピAPIを使用したいと思います。 APIのキーを登録して取得しました。しかし、URLにキーを入れる場所がわからないので、ブラウザに貼り付けてJSONレスポンスを得ることができます。 これはこれは私がURLを検索するときに、私が得るものですたとえばカール要求SwiでのAPIリクエスト

$response = Unirest\Request::get("https://spoonacular-recipe-food-nutrition-v1.p.mashape.com/recipes/findByIngredients?fillIngredients=false&ingredients=apples%2Cflour%2Csugar&limitLicense=false&number=5&ranking=1", 
    array(
    "X-Mashape-Key" => "KEY", 
    "X-Mashape-Host" => "spoonacular-recipe-food-nutrition-v1.p.mashape.com" 
) 
); 

です:

{ 
    "message":"Missing Mashape application key. Go to http:\/\/docs.mashape.com\/api-keys to learn how to get your API application key." 
} 

誰でもキーまたは取得するための別の方法で完全なURLを作成する方法を知っている場合

スウィフトでのJsonの反応は本当に感謝しています。 ありがとう

+0

APIアプリケーションキーを取得する方法については、http://docs.mashape.com/api-keysにアクセスする必要があります。 – matt

答えて

1

SwiftでAPIを呼び出す場合は、ここにあるAlamofireライブラリの使用をお勧めします。https://github.com/Alamofire/Alamofire

API呼び出しを認証するには、どのようにして認証する必要があるかを調べるために、ドキュメントに従う必要があります。一部のサービスでは認証がありませんが、一部のサービスでは1回限りの使用トークンを使用し、一部のサービスでは要求ヘッダーで渡されたAPIキーを使用します。このAPI呼び出しでは、キーとホストをリクエストヘッダーに渡す必要があります。 Alamofireを使用して、要求は次のようになります:

let headers: HTTPHeaders = [ 
    "X-Mashape-Key": "KEY", 
    "X-Mashape-Host": "spoonacular-recipe-food-nutrition-v1.p.mashape.com" 
] 

Alamofire.request("https://spoonacular-recipe-food-nutrition-v1.p.mashape.com/recipes/findByIngredients?fillIngredients=false&ingredients=apples%2Cflour%2Csugar&limitLicense=false&number=5&ranking=1", headers: headers).responseJSON { response in 
    debugPrint(response) 
} 

をあなたは手の前にアプリでリクエストをコーディングすることなく、API呼び出しをテストしたい場合は、私はポストマンと呼ばれるアプリケーションをダウンロードすることをお勧めします。これにより、迅速なアプリでAPIをテストし、回答を見ることができます。