Collectives™ on Stack Overflow
Find centralized, trusted content and collaborate around the technologies you use most.
Learn more about Collectives
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Learn more about Teams
I am trying to load image from URL on the iphone, image is there and I can open it in safari with same link, but not in the app:
Error Domain=NSURLErrorDomain Code=-1003 "A server with the specified hostname
could not be found." UserInfo={NSUnderlyingError=0x17024f810
{Error Domain=kCFErrorDomainCFNetwork Code=-1003 "(null)"
UserInfo={_kCFStreamErrorCodeKey=50331647, _kCFStreamErrorDomainKey=6147928288}},
NSErrorFailingURLStringKey=https://........, NSErrorFailingURLKey=https://.........
Code of request:
func downloadImage(userEmail: String, onCompletion: @escaping (UIImage) -> Void) {
print("Download Started")
let route = "\(baseURL as String)\(userEmail as String)\(baseURLparameters as String)"
let url = URL(string: route)
getDataFromUrl(url: url!) { (data, response, error) in
guard let data = data, error == nil else {
print("===failed:", error ?? "dunno")
print("===url:", url?.absoluteString ?? "dunno")
return
print(response?.suggestedFilename ?? url!.lastPathComponent )
print("Download Finished")
DispatchQueue.main.async() { () -> Void in
onCompletion(UIImage(data: data)!)
–
–
–
–
–
–
–
–
This happened in my case because one of the paths in our development servers was internal to our firewall/intranet/VPN and my device was not on our internal wi-fi.
Frustrating and confusing because it was working in the simulator and not on a device.
This error would suggest as DNS related issue.There is some problem with DNS server reached through our WiFi network. So we change DNS server and fix this problem.
Remove cache and try again.
If there is a url you can GET (instead POST) on the same server.
And Also, turning off wifi and using 3G makes the error go away.
–
The host name in your URL is wrong because the message you are getting back explicitly states it can't find a server with that host name.
The mst likely cause is that you have forgotten to put a forward slash between the base URL and the email e.g. if your base URL is
http://example.com
and your email is
jeremyp@example.com
You construct
http://example.comjeremyp@example.com
Put a break point on the line that creates the URL and inspect the string it is trying to create it from. It'll probably then be pretty obvious exactly what you are doing wrong.
–
–
–
–
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.