Of course I should have said, “produces what appears to be an incorrect result.”

Have I tried it? No.  I have not because it is telling me that the url I tried 
to create is nothing like the URL I tried to create.

Spending some time looking at it this morning and testing against the working 
string, it is apparent that the /api gets stripped off the URL when using 
relativeToURL.  Look at this.

(lldb) po self.sharedData.webServices
home-qa.mrcooper.com/api
 
(lldb) po self.sharedData.webServicesURL
https://home-qa.mrcooper.com/api
 
(lldb) po [[NSURL URLWithString:[NSString stringWithFormat:@"%@%@%@", 
@"https://";, self.sharedData.webServices, @"/login"]] absoluteURL]
https://home-qa.mrcooper.com/api/login
 
(lldb) po [[NSURL URLWithString:@"/login" 
relativeToURL:self.sharedData.webServicesURL] absoluteURL]
https://home-qa.mrcooper.com/login
 
See how relativeToURL: strips off the /api text from the URL?
 

So strange why they thought it a good idea to output the description and 
debugDescription that way AND strip off part of the URL.

Argh.  Thanks for the second (and third) set of eyes.
Alex Zavatone


Sent from my iPad
 
> On Feb 22, 2019, at 10:48 AM, Jens Alfke <j...@mooseyard.com> wrote:
> 
> 
> 
>> On Feb 22, 2019, at 8:39 AM, Alex Zavatone <z...@mac.com> wrote:
>> 
>> self.loginURL = [NSURL URLWithString:@"/login" 
>> relativeToURL:self.sharedData.webServicesURL]; // // WHY does this not work? 
>> It does "/login -- https://qa-home.mrcooper.com/api";
> 
> Because NSURL’s .description property has a stupid way of printing a relative 
> URL.
> 
> The actual URL is correct, as you’ll see if you do something like `po 
> self.loginURL.absoluteString`. It should return ` 
> https://qa-home.mrcooper.com/login`.
> 
> Moral of the story: Always use .absoluteString to convert an NSURL to a 
> string, never .description or something that calls it implicitly.
> 
> —Jens
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to