Ошибка тайм-аута запроса 1001 при использовании alamofire в ios swift - PullRequest
0 голосов
/ 05 июля 2018

Здесь я отправляю значение параметра, такое как имя пользователя, токен пользователя, идентификатор записи и т. Д., В бэкэнд, используя alamofire . если статус успешен, уведомление будет отправлено из бэкэнда. Внутри функции postnotification я попытался post код метода, используя alamofire и метод datatask , но он не работает. В консоли я получаю время ожидания запроса или ничего.

Вот мой код:

   func postNotification(postItem: String, post: Post) {


 //                declare parameter as a dictionary which contains string as key and value combination. considering inputs are valid



    print("Get token from post:::",post.token)
    print(postItem)
    let token = UserDefaults.standard.string(forKey: "token")
            //create the url with URL


    var parameters       = [String:Any]()

    parameters["count"]  = post.likeCount!
    parameters["likedby"]  = currentName
    parameters["postId"] = postItem
    parameters["token"] = post.token!

    let Url = String(format: "http://highavenue.co:9000/likesnotification")
    guard let serviceUrl = URL(string: Url) else { return }
    //        let loginParams = String(format: LOGIN_PARAMETERS1, "test", "Hi World")
    let parameterDictionary = ["username" : "Test", "password" : "123456"]
    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

    let session = URLSession.shared
    session.dataTask(with: request) { (data, response, error) in
        if let response = response {
            print(response)
        }
        if let data = data {
            do {
                let json = try JSONSerialization.jsonObject(with: data, options: [])
                print(json)
            }catch {
                print(error)
            }
        }
        }.resume()


  //        let headers: HTTPHeaders = ["Content-Type" :"application/x-www-form-urlencoded"]
  //
  //        Alamofire.request("http://highavenue.co:9000/likesnotification", method: .post, parameters: parameters, encoding: JSONEncoding.default, headers: headers).responseJSON { (response) in
 //                    //             original URL request
 //                        print("Request is :",response.request!)
 //
 //                        // HTTP URL response --> header and status code
 //                        print("Response received is :",response.response)
 //
 //                        // server data : example 267 bytes
   //                        print("Response data is :",response.data)
  //
    //                        // result of response serialization : SUCCESS / FAILURE
   //                        print("Response result is :",response.result)
   //
   //                        debugPrint("Debug Print :", response)
  //
   //
   //        }


  //        Alamofire.request("http://highavenue.co:9000/likesnotification", method: HTTPMethod.post, parameters: json, encoding: JSONEncoding.default, headers: headers).responseJSON { response in
   //
    //            // original URL request
   //            print("Request is :",response.request!)
   //
  //            // HTTP URL response --> header and status code
    //            print("Response received is :",response.response)
   //
  //            // server data : example 267 bytes
   //            print("Response data is :",response.data)
   //
   //            // result of response serialization : SUCCESS / FAILURE
  //            print("Response result is :",response.result)
  //
  //            debugPrint("Debug Print :", response)
  //        }



  }

Любая помощь высоко ценится пожалуйста.

1 Ответ

0 голосов
/ 05 июля 2018

Яах решил это. Произошла ошибка по неосторожности. Я использовал дополнительную косую черту в URL. Я изменил веб-API в другую папку, и я сделал эту ошибку при изменении его в коде iOS. а также установите здесь интервал времени ожидания.

let RequestData = NSMutableURLRequest(URL: NSURL.init(string: "Your URL Hear")!)
RequestData.HTTPMethod = "POST"
RequestData.timeoutInterval = 250 // Time interval here.

Alamofire.request(RequestData).responseJSON { (responseData) -> Void in
    if((responseData.result.value) != nil) { // response
        print(responseData.result.value!)
    }
}    

Надеюсь, что это поможет вам ..

...