unsupported URL NSMutableURLRequest post

本文介绍了一种解决iOS应用中遇到的“unsupportedURL”错误的方法。通过使用正确的URL编码和设置请求参数,可以有效避免因URL格式问题导致的连接错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Printing description of connectionError:

Error Domain=NSURLErrorDomain Code=-1002 "unsupported URL" UserInfo=0x7fb3a3427050 {NSLocalizedDescription=unsupported URL, NSUnderlyingError=0x7fb3a36d9140 "unsupported URL"}

    //待传得数据

    NSString *contentString = @"jltItemId=1730&queryType=1&queryTypeId=121";

//    NSString *contentString = @"jltItemId=1730";

    //转换成二进制流在网络上传输

    NSData *contentData = [contentString dataUsingEncoding:NSUTF8StringEncoding];

    //服务器地址

    NSString *urlString = @"http://192.168.1.161:8080/AK/ak/itemDetail/1000/1.8.1/1/1048/650/北京市";

//如果不加下面一句回会报上面的错误

//    urlString = [urlString stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding];

    NSURL *url = [NSURL URLWithString:urlString];


    NSMutableURLRequest *urlrequest = [NSMutableURLRequest requestWithURL:url];

    //设置请求方式

    [urlrequest setHTTPMethod:@"POST"];

    //设置请求内容

    [urlrequest setHTTPBody:contentData];


    //设置请求头

//    [urlrequest setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"content-type"];

    [NSURLConnection sendAsynchronousRequest:urlrequest queue:[NSOperationQueue currentQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {

        NSString *responseString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

        NSLog(@"-----%@",responseString);

    }];

stringByAddingPercentEscapesUsingEncoding解释

Returns a representation of the receiver using a given encoding to determine the percent escapes necessary to convert the receiver into a legal URL string.

转换成接收端规定的编码格式


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值