I am running a full node which accepts incoming connections.

Here is my config file:


Here is my swift code to curl to the node:

let url = URL(string: "http://bitcoinrpc:somePassword@")
    var request = URLRequest(url: url!)
    request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
    request.httpMethod = "GET"
    request.httpBody = "{\"jsonrpc\":\"1.0\",\"id\":\"curltext\",\"method\":\"getinfo\",\"params\":[]}".data(using: .utf8)

        let task = URLSession.shared.dataTask(with: request) { (data, response, error) -> Void in

            do {

                if error != nil {


                } else {

                    if let urlContent = data {

                        do {

                            let jsonAddressResult = try JSONSerialization.jsonObject(with: urlContent, options: JSONSerialization.ReadingOptions.mutableLeaves) as! NSDictionary

                            print("jsonAddressResult = \(jsonAddressResult)")

                        } catch {




I am using port 8333 and the static IP I set is

I get the following error when executing the code:

2018-08-02 12:04:53.659293+0800 BitSense[5596:568091] Task <47A80E16-F0FE-4508-9C5D-3EFDD82B55FB>.<1> HTTP load failed (error code: -1005 [4:-4])
2018-08-02 12:04:53.660223+0800 BitSense[5596:568092] Task <47A80E16-F0FE-4508-9C5D-3EFDD82B55FB>.<1> finished with error - code: -1005
Optional(Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost." UserInfo={NSUnderlyingError=0x600000244650 {Error Domain=kCFErrorDomainCFNetwork Code=-1005 "(null)" UserInfo={NSErrorPeerAddressKey=<CFData 0x600000280460 [0x107f6ac80]>{length = 16, capacity = 16, bytes = 0x1002208dc0a801080000000000000000}, _kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4}}, NSErrorFailingURLStringKey=http://bitcoinrpc:5bKc4zYHX6qvB9HjKK89Ms2h@, NSErrorFailingURLKey=http://bitcoinrpc:5bKc4zYHX6qvB9HjKK89Ms2h@, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-4, NSLocalizedDescription=The network connection was lost.})enter preformatted text here

8333 is the node connection port. Since you didn't change the RPC port in the config file, the port you should connect to is 8332.

  • Thank you! also for anyone having the same issue, I needed to change the request.httpMethod = "GET" to "POST" and the "getinfo" method to "getwalletinfo". :) – Fontaine Aug 3 '18 at 0:52
  • AND I needed to change rpcallowip in the config file to rpcallowip= – Fontaine Aug 3 '18 at 0:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.