[NSURL URLWithString:requestUrl relativeToURL:baseUrl]如果requestUrl包含'/User/page',则返回nil。

如果你想做个测试。
NSString *reqUrl1 = @"/api/v3.1/User/Page/";
NSString *reqUrl2 = @"api/v3.1/User/Page";
NSString *reqUrl3 = @"/api/v3.1/User/Page/";
NSString *reqUrl4 = @"/api/v3.1/Follow/Page";
NSString *reqUrl5 = @"/api/v3.1/User/Follow";
NSString *reqUrl6 = @"/api/v3.1/User/Pollow";
NSString *reqUrl7 = @"api/v3.2/User/Page";
NSString *reqUrl8 = @"api/v3.2/User/Page/aaa/bbb";
NSURL *url = [NSURL URLWithString:@"http://appgateway.xxx.xx-xxx.xxx.com/"];
NSString *lastUrl1 = [NSURL URLWithString:reqUrl1 relativeToURL:url].absoluteString;
NSString *lastUrl2 = [NSURL URLWithString:reqUrl2 relativeToURL:url].absoluteString;
NSString *lastUrl3 = [NSURL URLWithString:reqUrl3 relativeToURL:url].absoluteString;
NSString *lastUrl4 = [NSURL URLWithString:reqUrl4 relativeToURL:url].absoluteString;
NSString *lastUrl5 = [NSURL URLWithString:reqUrl5 relativeToURL:url].absoluteString;
NSString *lastUrl6 = [NSURL URLWithString:reqUrl6 relativeToURL:url].absoluteString;
NSString *lastUrl7 = [NSURL URLWithString:reqUrl7 relativeToURL:url].absoluteString;
NSString *lastUrl8 = [NSURL URLWithString:reqUrl8 relativeToURL:url].absoluteString;
NSLog(@"============");
// ------------------------------------------------------
(lldb) po lastUrl1
nil
(lldb) po lastUrl2
nil
(lldb) po lastUrl3
nil
(lldb) po lastUrl4
http://appgateway.xxx.xx-xxx.xxx.com/api/v3.1/Follow/Page
(lldb) po lastUrl5
http://appgateway.xxx.xx-xxx.xxx.com/api/v3.1/User/Follow
(lldb) po lastUrl6
http://appgateway.xxx.xx-xxx.xxx.com/api/v3.1/User/Pollow
(lldb) po lastUrl7
nil
(lldb) po lastUrl8
nil发布于 2019-10-24 10:07:53
@Larme。对不起,我的例子有问题。第三个示例修改为"/api/v3.1/user/page“。那是胡说。
遵循您的代码。打印为
错误:http://appgateway.xxx.xx-xxx.xxx.com/ +/api/v3.1/用户/页面成功:http://appgateway.xxx.xx-xxx.xxx.com/api/v3.1/follow/page
但是我通过遍历字符发现了一个问题。
for (NSString *aRequestURL in requestURLs) {
for(int i=0; i<aRequestURL.length; i++){
unichar ch = [aRequestURL characterAtIndex: i];
printf("%hu", ch);
}
NSLog(@"%@", aRequestURL);
}在'/user‘和'/page’之间有一个奇怪的字符'8203‘。非常感谢你的代码。它开阔了我的思路
但是我不知道为什么'8203‘会影响URL生成
https://stackoverflow.com/questions/58520962
复制相似问题