CopyPastor

Detecting plagiarism made easy.

Score: 0.8052153587341309; Reported for: String similarity Open both answers

Possible Plagiarism

Plagiarized on 2025-01-30
by deepak bawa

Original Post

Original - Posted on 2016-02-12
by Narasimha Nallamsetty



            
Present in both answers; Present only in the new answer; Present only in the old answer;

import Foundation import UIKit class ViewModel:NSObject { func hitPostApi(username: String, password: String, completion: @escaping (Bool) -> Void) { let url = "https://dummyjson.com/auth/login" guard let serviceUrl = URL(string: url) else { return } let parameters: [String: Any] = [ "username": username, "password": password ] var request = URLRequest(url: serviceUrl) request.httpMethod = "POST" request.setValue("application/json", forHTTPHeaderField: "Content-Type") guard let httpBody = try? JSONSerialization.data(withJSONObject: parameters, options: []) else { return } request.httpBody = httpBody request.timeoutInterval = 20 let session = URLSession.shared session.dataTask(with: request) { (data, response, error) in if let error = error { print("Error: \(error.localizedDescription)") completion(false) return } guard let data = data else { completion(false) return } do { let decoder = JSONDecoder() if let loginResponse = try? decoder.decode(LoginproductModel.self, from: data) { UserDefaults.standard.setValue(loginResponse.accessToken, forKey: "accessToken") print("Login Successful") print("Data",data) print("Token", loginResponse.accessToken) completion(true) // Notify success } else { print("Failed to decode login response") completion(false) } } }.resume() } func changeApiKey(completionHandler: @escaping(AfterLogin) -> Void) { if let url = URL(string: "https://dummyjson.com/auth/me") { var request = URLRequest(url: url) request.httpMethod = "GET" request.setValue("text/plain",forHTTPHeaderField: "Accept") // request.addValue("sk_d3KmPtjEtdGTjChLB0ylraAb/AWgfyR9MOxFXwgEWSZsnpoIXFVDfm1Snoak0ufRe0w=", forHTTPHeaderField: "secret_key") // request.addValue("pk_Bvk6rVC7WxbRW2O3sy4xwCEiM+n8jdT55BQv4BA0zG4IawzpbDhTVzSvj43DcvU7cM0x", forHTTPHeaderField: "publish_key") // request.addValue("Bearer \(String(describing: UserDefaults.standard.string(forKey: "acessToken")))", forHTTPHeaderField: "Authorization") var token = String() token = UserDefaults.standard.string(forKey: "accessToken") ?? "" request.addValue("Bearer \(token)", forHTTPHeaderField: "Authorization") let task = URLSession.shared.dataTask(with: request) { data, response, error in guard error == nil else { print(error!) return } guard let jsonData = data else { return } do { let decoder = JSONDecoder() let productsResponse = try decoder.decode(AfterLogin.self, from: jsonData) let productDetails = productsResponse DispatchQueue.main.async { //self.tblData = productDetails.body?.nutritionistsList // tbale.reloadData() }
completionHandler(productDetails) }catch { print(error.localizedDescription) }
} task.resume() } } }
Here is the complete code for REST API requests using NSURLSession in swift
For GET Request
let configuration = NSURLSessionConfiguration .defaultSessionConfiguration() let session = NSURLSession(configuration: configuration) let urlString = NSString(format: "your URL here") print("get wallet balance url string is \(urlString)") //let url = NSURL(string: urlString as String) let request : NSMutableURLRequest = NSMutableURLRequest() request.URL = NSURL(string: NSString(format: "%@", urlString) as String) request.HTTPMethod = "GET" request.timeoutInterval = 30 request.addValue("application/json", forHTTPHeaderField: "Content-Type") request.addValue("application/json", forHTTPHeaderField: "Accept") let dataTask = session.dataTaskWithRequest(request) { (let data: NSData?, let response: NSURLResponse?, let error: NSError?) -> Void in // 1: Check HTTP Response for successful GET request guard let httpResponse = response as? NSHTTPURLResponse, receivedData = data else { print("error: not a valid http response") return } switch (httpResponse.statusCode) { case 200: let response = NSString (data: receivedData, encoding: NSUTF8StringEncoding) print("response is \(response)") do { let getResponse = try NSJSONSerialization.JSONObjectWithData(receivedData, options: .AllowFragments) EZLoadingActivity .hide() // } } catch { print("error serializing JSON: \(error)") } break case 400: break default: print("wallet GET request got response \(httpResponse.statusCode)") } } dataTask.resume()

For POST request ...
let configuration = NSURLSessionConfiguration .defaultSessionConfiguration() let session = NSURLSession(configuration: configuration) let params = ["username":bindings .objectForKey("username"), "provider":"walkingcoin", "securityQuestion":securityQuestionField.text!, "securityAnswer":securityAnswerField.text!] as Dictionary<String, AnyObject> let urlString = NSString(format: “your URL”); print("url string is \(urlString)") let request : NSMutableURLRequest = NSMutableURLRequest() request.URL = NSURL(string: NSString(format: "%@", urlString)as String) request.HTTPMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json", forHTTPHeaderField: "Content-Type") request.addValue("application/json", forHTTPHeaderField: "Accept") request.HTTPBody = try! NSJSONSerialization.dataWithJSONObject(params, options: [])
let dataTask = session.dataTaskWithRequest(request) { (let data: NSData?, let response: NSURLResponse?, let error: NSError?) -> Void in // 1: Check HTTP Response for successful GET request guard let httpResponse = response as? NSHTTPURLResponse, receivedData = data else { print("error: not a valid http response") return } switch (httpResponse.statusCode) { case 200: let response = NSString (data: receivedData, encoding: NSUTF8StringEncoding) if response == "SUCCESS" { } default: print("save profile POST request got response \(httpResponse.statusCode)") } } dataTask.resume()

I hope it works.

        
Present in both answers; Present only in the new answer; Present only in the old answer;