gpt4 book ai didi

ios - 通过 iOS 将数据发送到 POST JSON Web 服务

转载 作者:可可西里 更新时间:2023-11-01 03:09:01 25 4
gpt4 key购买 nike

我想使用以下代码将数据传递到 POST JSON 网络服务。

NSString *urlString = @"http://3.10.204.99:9090/service/outage/data/getShortFormData";
NSDictionary *inputData = [[NSDictionary alloc] initWithObjectsAndKeys:
@"1020", @"outageId",
@"Alex", @"customerName",
nil];

NSError *error = nil;
NSData *jsonInputData = [NSJSONSerialization dataWithJSONObject:inputData options:NSJSONWritingPrettyPrinted error:&error];
NSString *jsonInputString = [[NSString alloc] initWithData:jsonInputData encoding:NSUTF8StringEncoding];
[self checkWithServer:urlString jsonString:jsonInputString];

-(void)checkWithServer:(NSString *)urlname jsonString:(NSString *)jsonString{

NSURL *url1 = [NSURL URLWithString:urlname];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url1];
[request setHTTPMethod:@"POST"];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[request setValue:@"charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:[jsonString dataUsingEncoding:NSUTF8StringEncoding]];
NSURLResponse *response;
NSError *err;
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&err];
id jsonResponseData = [NSJSONSerialization JSONObjectWithData:responseData options:kNilOptions error:nil];

NSDictionary *jsonResponseDict;
if ([jsonResponseData isKindOfClass:[NSDictionary class]]) {
jsonResponseDict = jsonResponseData;
} else {
// Error-handling code
}
jsonResponseData = [jsonResponseDict objectForKey:@"d"];
if (jsonResponseData == nil) {
// Server may have returned a response containing an error
// The "ExceptionType" value is returned from my .NET server used in sample
id jsonExceptioTypeData = [jsonResponseDict objectForKey:@"ExceptionType"];
if (jsonExceptioTypeData != nil) {
NSLog(@"%s ERROR : Server returned an exception", __func__);
NSLog(@"%s ERROR : Server error details = %@", __func__, jsonResponseDict);
}
}
}

执行这段代码时,没有报错,但数据没有更新。

我们将对此提供任何帮助表示遗憾。

谢谢大家

最佳答案

试试下面的代码

+(NSData *)postDataToUrl:(NSString*)urlString:(NSString*)jsonString
{
NSData* responseData = nil;
NSURL *url=[NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
responseData = [NSMutableData data] ;
NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:url];
NSString *bodydata=[NSString stringWithFormat:@"data=%@",jsonString];

[request setHTTPMethod:@"POST"];
NSData *req=[NSData dataWithBytes:[bodydata UTF8String] length:[bodydata length]];
[request setHTTPBody:req];
NSURLResponse* response;
NSError* error = nil;
responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];

NSLog(@"the final output is:%@",responseString);

return responseData;
}

关于ios - 通过 iOS 将数据发送到 POST JSON Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19807368/

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