gpt4 book ai didi

ios - Objective c post 请求不发送数据

转载 作者:可可西里 更新时间:2023-11-01 06:13:56 24 4
gpt4 key购买 nike

美好的一天。我正在尝试将简单的发布数据发送到服务器。这就是我执行此操作的代码。

 -(void)makeRequest:(NSString*)stringParameters{
NSError *error;

NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration delegate:self delegateQueue:nil];
NSURL *url = [NSURL URLWithString:@"http://vaenterprises.webatu.com/Authentication.php"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:60.0];

[request addValue:@"application/text" forHTTPHeaderField:@"Content-Type"];
[request addValue:@"application/text" forHTTPHeaderField:@"Accept"];
[request setHTTPMethod:@"POST"];
NSString* postData = @"tag=hello&username=yo&something=something";
[request setHTTPBody:postData];



NSURLSessionDataTask *postDataTask = [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {

[self parseJson:data];
}];

[postDataTask resume];


}

它看起来很棒,直到我像这样从 php 端回应整个帖子

echo json_encode($_POST);

然后我像这样在 iOS 中打印结果

-(void)parseJson:(NSData*) data{
NSString *myString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSError *jsonError = nil;
NSDictionary* jsonObject= [NSJSONSerialization JSONObjectWithData:data options:0 error:&jsonError];
NSLog(@"%@",myString);
}

这个问题是我得到空字符串..所以这意味着发布数据没有被发送,这是 10000% 的客观 c 端问题,我不知道为什么在这个方法中我们只得到了 setHttpBody 与实际包含由 & 分隔的键和值的字符串,但如您所见,该数据未发送。那么我做错了什么?请告诉别人

最佳答案

Http body 必须是 NSData 类型。试试下面的代码

NSString* stringData = @"tag=hello&username=yo&something=something";
NSData* data = [stringData dataUsingEncoding:NSUTF8StringEncoding];
[request setHTTPBody:data];

关于ios - Objective c post 请求不发送数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35112982/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com