Xcode5 使用AFXcode的JSON POST请求
我遇到了一个问题,花了这么多时间寻找解决方案,解决了我在服务器上发布JSON数据的问题。我想这是一个x-www-form-url编码的。当我使用一个google chrome插件来测试GET和POST请求时,它是有效的,但当我将它应用到我的应用程序时。服务器没有返回任何内容,我想我有一个错误。这是我在《邮递员》上写的Xcode5 使用AFXcode的JSON POST请求,xcode5,http-post,afnetworking-2,Xcode5,Http Post,Afnetworking 2,我遇到了一个问题,花了这么多时间寻找解决方案,解决了我在服务器上发布JSON数据的问题。我想这是一个x-www-form-url编码的。当我使用一个google chrome插件来测试GET和POST请求时,它是有效的,但当我将它应用到我的应用程序时。服务器没有返回任何内容,我想我有一个错误。这是我在《邮递员》上写的 access_token:myAccessToken cartData:[{"mapAttributes":[{"name":"color","value":"Yellow","p
access_token:myAccessToken
cartData:[{"mapAttributes":[{"name":"color","value":"Yellow","price":"0","id":"b_14","isSelected":1,"img_id":"1005"},{"name":"size","value":"Xl","price":"100","id":"b_11","isSelected":1,"img_id":"1005"},{"name":"material","value":"Metal","price":"0.00","id":"b_13","isSelected":1,"img_id":"1005"}],"quantity":"1","slug":"mi-3-16gb"}]
请求是正确的。
但当我把它应用到我的应用程序时
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSDictionary *parameters = @{@"access_token":token,@"cartData":myData};
[manager POST:@"http://192.168.4.30/myUrl" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"%@",responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}]
myData的值为:
[{"mapAttributes":[{"name":"color","value":"Yellow","price":"0","id":"b_14","isSelected":1,"img_id":"1005"},{"name":"size","value":"Xl","price":"100","id":"b_11","isSelected":1,"img_id":"1005"},{"name":"material","value":"Metal","price":"0.00","id":"b_13","isSelected":1,"img_id":"1005"}],"quantity":"1","slug":"mi-3-16gb"}]
它返回()
,并且没有错误
这是我使用邮递员时的回报
{
"6e2713a6efee97bacb63e52c54f0ada0": {
"rowid": "6e2713a6efee97bacb63e52c54f0ada0",
"productId": 557,
"productItemId": 1515,
"maximumAvailability": "2",
"slug": "lg-optimus-g2-d802",
"name": "LG Optimus G2 D802",
"quantity": "1",
"description": "<h1 id=\"prod_title\">LG Optimus G2 D802</h1>",
"brand": "Custom",
"originalPrice": "27690.0000",
"finalPrice": "18829.2",
"sellerDetails": {
"sellerName": "lazada",
"sellerRating": {
"rateCount": 0,
"rateDescription": {
"Item quality": 0,
"Communication": 0,
"Shipment time": 0
}
},
"sellerContactNumber": "",
"sellerEmail ": "ryanannatuvasquez2@easyshop.ph"
},
"images": {
"1004": "./assets/product/557_128_20140715/557_128_20140715722500.jpg"
},
"mapAttributes": []
}
}
{
“6e2713a6efee97bacb63e52c54f0ada0”:{
“rowid”:“6e2713a6efee97bacb63e52c54f0ada0”,
“productId”:557,
“productItemId”:1515,
“最大可用性”:“2”,
“slug”:“lg-optimus-g2-d802”,
“名称”:“LG Optimus G2 D802”,
“数量”:“1”,
“说明”:“LG Optimus G2 D802”,
“品牌”:“定制”,
“原始价格”:“27690.0000”,
“最终价格”:“18829.2”,
“卖方详情”:{
“sellerName”:“lazada”,
“Sellerating”:{
“费率计数”:0,
“费率说明”:{
“项目质量”:0,
“通信”:0,
“装运时间”:0
}
},
“sellerContactNumber”:”,
“sellerEmail”:ryanannatuvasquez2@easyshop.ph"
},
“图像”:{
“1004”:“/assets/product/557_128_20140715/557_128_2014071572250.jpg”
},
“映射属性”:[]
}
}
请帮我写代码。谢谢。只要将我的JSON布尔数据更改为字符串“true”
我不知道Objective C,但是否有Web服务不返回任何内容的实例?例如,如果访问令牌无效或其他情况?我会通过回显webservice中的字符串来进行测试,首先至少看看webservice是否被正确调用。当我在postman上尝试时,如果我输入了无效的JSON格式(例如使用{}而不是使用[]作为JSON数组),则服务器不会返回任何内容。我想,May Objective C正在更改我的JSON格式。就像在您的Web服务中一样,如果它是php,只需在开头加上“die('TEST');”,看看是否至少返回了该格式。然后你也许可以更好地诊断这个问题。我通过将布尔json作为字符串解决了这个问题。“真的”。。。和重新启动邮递员。:)谢谢你,菲尔爵士。
[{"mapAttributes":[{"name":"color","value":"Yellow","price":"0","id":"b_14","isSelected":"true","img_id":"1005"},{"name":"size","value":"Xl","price":"100","id":"b_11","isSelected":"true","img_id":"1005"},{"name":"material","value":"Metal","price":"0.00","id":"b_13","isSelected":"true","img_id":"1005"}],"quantity":"1","slug":"lg-optimus-g2-d802"}]
2014-10-14 11:56:11.833 Easyshop.ph[12399:1263983] [{"mapAttributes":[{"name":"color","value":"Yellow","price":"0","id":"b_14","isSelected":"true","img_id":"1005"},{"name":"size","value":"Xl","price":"100","id":"b_11","isSelected":"true","img_id":"1005"},{"name":"material","value":"Metal","price":"0.00","id":"b_13","isSelected":"true","img_id":"1005"}],"quantity":"1","slug":"lg-optimus-g2-d802"}]