AFNetworking 总是返回不可接受的内容类型:text/html

Posted

技术标签:

【中文标题】AFNetworking 总是返回不可接受的内容类型:text/html【英文标题】:AFNetworking always returns unacceptable content-type: text/html 【发布时间】:2015-08-27 10:42:13 【问题描述】:

我的请求

NSString *soapMessage =[NSString stringWithFormat:@"MY_SOAP_MESSAGE"];

NSURL *url = [NSURL URLWithString:@"MY_URL"];
NSMutableURLRequest *theRequest = [NSMutableURLRequest requestWithURL:url];
NSString *msgLength = [NSString stringWithFormat:@"%d",(int)[soapMessage length]];

[theRequest addValue: @"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[theRequest addValue: @"MY_SOAP_ACTION" forHTTPHeaderField:@"soapaction"];
[theRequest addValue: msgLength forHTTPHeaderField:@"Content-Length"];
[theRequest setHTTPMethod:@"POST"];
[theRequest setHTTPBody: [soapMessage dataUsingEncoding:NSUTF8StringEncoding]];


AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:theRequest];
operation.responseSerializer = [AFXMLParserResponseSerializer serializer];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) 

它总是返回不可接受的内容类型 有人可以帮忙吗?

我使用 AFHTTPRequestOperationLogger,它给了我这个响应

POST 'MY_URL': 
"Content-Length" = 250;
"Content-Type" = "text/xml; charset=utf-8";
soapaction = "MY_SOAP_ACTION";

回复:

2015-08-28 08:40:58.101 Mofa[2713:198850] 200 'MY_URL' [1.0564 s]: 
"Cache-Control" = "no-cache";
Connection = close;
"Content-Length" = 188;
"Content-Type" = "text/html; charset=utf-8";
Pragma = "no-cache";

Request Rejected 请求的 URL 被拒绝。请咨询您的管理员。您的支持 ID 是:9052083282217935970

Web 服务在 SOAP 客户端上运行良好的大问题

【问题讨论】:

【参考方案1】:

我靠运气修复了错误。 我从 Soap Message 中删除了 XML 标记,它可以工作了

<?xml version=\"1.0\" encoding=\"UTF-8\"?>

有人知道为什么会这样吗?

【讨论】:

您能分享一下您的“soapMessage”格式吗?我也遇到了这个错误,但我正在使用 NSMutableURLRequest 创建请求。

以上是关于AFNetworking 总是返回不可接受的内容类型:text/html的主要内容,如果未能解决你的问题,请参考以下文章

AFNetworking 2.0:NSLocalizedDescription=请求失败:不可接受的内容类型:文本/html

“请求失败:不可接受的内容类型:文本/html”使用 AFNetworking 2.0

请求失败:不可接受的内容类型:使用 AFNetworking 2.5 的图像/jpg

Swift 项目中的 AFNetorking ——“错误:请求失败:不可接受的内容类型:文本/html”

AFNetworking - 可达性总是返回 -1

AFNetworking 2.0:isReachable 总是返回 False