我提供了GET请求。在内部API字符串中我应该放一些数据,我正在追求 运行应用程序,所以我需要将我的整个字符串分成两部分,并将我的结果,即resultText放在两者之间。所以我用startQuery和endQuery制作了它。但我失败了,同时打造这个应用程序。希望有人有个主意。这是一些ScreenShots:
- (void)makeRequest
{
if (_responseData == nil)
{
_responseData = [NSMutableData new];
}
NSString* startQuery = [NSString stringWithString:@"https://www.wikifood.eu/wikifood/en/struts/xxxxxxxx.do?method=getProductOverview&query="];
NSString* endQuery = [NSString stringWithString:@"&startAt=0&limit=5&filter=true&loginname=xxxxxx&password=6f052cxxx15a4c2813baf3x75xx51dead1f4fe2"];
NSURL *url = [NSURL URLWithString:[[NSString stringWithFormat:@"%@%@%@", startQuery, resultText.text, endQuery] stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding]];
NSURLRequest* request = [NSURLRequest requestWithURL:url];
_urlConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self];
}
感谢。
答案 0 :(得分:1)
您看到的两个警告是因为您在使用文字字符串时使用NSString stringWithString
。
替换:
NSString* startQuery = [NSString stringWithString:@"https://www.wikifood.eu/wikifood/en/struts/xxxxxxxx.do?method=getProductOverview&query="];
NSString* endQuery = [NSString stringWithString:@"&startAt=0&limit=5&filter=true&loginname=xxxxxx&password=6f052cxxx15a4c2813baf3x75xx51dead1f4fe2"];
使用:
NSString* startQuery = @"https://www.wikifood.eu/wikifood/en/struts/xxxxxxxx.do?method=getProductOverview&query=";
NSString* endQuery = @"&startAt=0&limit=5&filter=true&loginname=xxxxxx&password=6f052cxxx15a4c2813baf3x75xx51dead1f4fe2";
答案 1 :(得分:0)
不确定,但您要添加百分比转义: stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding
但是你在整个字符串上做...我认为你的意思是:
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@%@", startQuery, [resultText.text stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding], endQuery]];
你的网址不需要转义,你知道,没关系,只是你的“不安全”文字
再次:不确定,我没有打开XCode尝试^^