iOS-এ একটি HTTP অনুরোধ করতে আমরা ডেটাটাস্ক এবং সেশনগুলি ব্যবহার করব। আমরা কনফিগারেশন, সেশন, ইউআরএল, অনুরোধ এবং ডেটাটাস্ক অবজেক্ট তৈরি করব। আসুন দেখি যে ধাপগুলো আমরা পার করব।
-
সবার আগে আমাদের একটি সেশন অবজেক্ট তৈরি করতে হবে, যা ডিফল্ট কনফিগারেশন।
আলো কনফিগারেশন =URLSessionConfiguration.defaultlet সেশন =URLSession(কনফিগারেশন:কনফিগারেশন)
-
তারপর আমাদের যে ধরনের ইউআরএল রিকোয়েস্ট তৈরি করতে হবে সেটা পেতে, পোস্ট, ডিলিট বা পুট করা যাবে। এই উদাহরণে আমরা "POST" টাইপ দেখতে পাচ্ছি৷
৷
-
একবার আমরা রিকোয়েস্ট অবজেক্ট তৈরি করে ফেললে, আমাদের ডাটাটাস্ক থেকে পারফর্ম করতে হবে, আমরা এইমাত্র উপরে তৈরি করা URL দিয়ে। আমাদের সম্পূর্ণ ডেটাটাস্ক পদ্ধতি এখন দেখতে এইরকম হওয়া উচিত।
dataTask =session.dataTask (সহ:url!) { data,response, error in guard যাক httpResponse =প্রতিক্রিয়া হিসাবে? HTTPURLResponse, let receiveData =data else { print("error:not a valid HTTP প্রতিক্রিয়া") return } switch (httpResponse.statusCode) { ক্ষেত্রে 200://success প্রতিক্রিয়া। break case 400:break default:break }}dataTask.resume()
-
এখন আমরা এটিকে একটি ফাংশনে এম্বেড করতে পারি এবং আমাদের কোডে ব্যবহার করতে পারি।
func hitAPI(_for URLString:String) { let configuration =URLSessionConfiguration.default let session =URLSession(configuration:configuration) let url =URL(string:URLString) //let url =NSURL(string:urlString as String) var অনুরোধ :URLRequest =URLRequest(url:url!) request.httpMethod ="POST" request.addValue("application/json", forHTTPHeaderField:"Content-Type") request.addValue("application/json", forHTTPHeaderField:"স্বীকার করুন ") let dataTask =session.dataTask(সহ:url!) { data,response,error in // 1:সফল GET অনুরোধ গার্ডের জন্য HTTP প্রতিক্রিয়া চেক করুন httpResponse =প্রতিক্রিয়া হিসাবে? HTTPURLResponse, let receiveData =data else { print("error:not a valid HTTP প্রতিক্রিয়া") return } switch (httpResponse.statusCode) { ক্ষেত্রে 200://success প্রতিক্রিয়া। break case 400:break default:break } } dataTask.resume()}
দ্রষ্টব্য :কিছু API অ্যাক্সেস করার জন্য আপনাকে আপনার info.plist ফাইলে ট্রান্সপোর্ট সিকিউরিটি ব্যতিক্রমের অনুমতি দিতে হতে পারে।
এই উদাহরণের সাথে কোন আউটপুট দেখানো হয়নি কারণ কিছু ডেটা পোস্ট করার জন্য একটি API প্রয়োজন হয়৷
৷