【SwiftUI】Django-REST-Frameworkを利用するAPI接続【GET,PUSH,POST,DELETE】

この記事では、SwiftUIと、Django Rest Frameworkを利用するプロジェクトで、API接続(GET、PUSH、POST、DELETE)を行う方法を解説しています。

 

◆動作検証環境

・ローカル環境:mac Catalina
・XCode:12.1
・SwiftUI:2.0
・Django:3.1.2
・DjangoRESTframework: 3.12.1
スポンサードリンク

SwiftUIのDjango-REST-Frameworkを使ったAPI接続【GET】

 

基本となるGET接続のコードは以下のとおりです。

ポイント

14行目:バックエンドの設定でAPI接続の際にTokenキーを利用する設定にしているため、urlRequest.addValue() としています。

35行目:GET接続で取得するデータを、SwiftUIで利用できるようにするため、デコードを行っています。[Infos]型を指定していますが、ここの型は取得元のデータに合わせて作成します。

 

SwiftUIのDjango-REST-Frameworkを使ったAPI接続【POST】

 

基本となるPOST接続のコードは以下のとおりです。

 

ポイント

14行目:urlRequest.httpMethod = "POST" とし、httpMethodを”POST”に指定しています。(指定しない場合は”GET”となります)

17行目:POSTする値を配列で作成します。

23行目:配列で作成した値を、JSON形式にシリアライズしています。

 

SwiftUIのDjango-REST-Frameworkを使ったAPI接続【PUT】

 

基本となるPUT接続のコードは以下のとおりです。

 

PUTの接続は、POSTと共通するコードがほとんどです。

httpMethodを”PUT”指定する点以外は共通のコードとすることができます。

 

ポイント

2,5,6行目:更新するデータを指定する必要があるので、引数でPK(プライマリーキー)を受け取り、エンドポイントで指定しています。

14行目:urlRequest.httpMethod = "POST" とし、httpMethodを”PUT”に指定しています。

 

SwiftUIのDjango-REST-Frameworkを使ったAPI接続【DELETE】

 

基本となるDELETE接続のコードは以下のとおりです。

ポイント

2,4,6行目:削除するデータを指定する必要があるので、引数でPK(プライマリーキー)を受け取り、エンドポイントで指定しています。

14行目:urlRequest.httpMethod = "DELETE" とし、httpMethodを”DELETE”に指定しています。

 


以上、SwiftUIと、Django Rest Frameworkを利用するプロジェクトで、API接続(GET、PUSH、POST、DELETE)を行う方法を紹介しました。