国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

socket上傳nsdictionary的json數據異常

2019-11-14 18:11:23
字體:
來源:轉載
供稿:網友

異常情況如下:按照正常的寫法,將上傳對數據封裝在nsdictionary里,然后檢驗是否符合json格式化,調用系統的json序列化方法將nsdictionary轉化為json數據然后上傳,

異常結果如下:,后臺只能收到收到nsdictionary的第一個{,后測試數據從nsdictionary的第一個{斷開了

由于控制臺打印的nsdictioanry數據如下

故猜測上傳數據時"/n"作為了數據的分隔符被切斷了,所以將nsdictionary轉化為nsstring并且將"/n"替換為空格然后發現數據無法上傳,最后追加了"/n"到nsstring末端,上傳成功

完整代碼如下:

#PRagma mark - GCDAsyncSocketDelegate
/** *  鏈接成功 * *  @param sock sock實例 *  @param host ip *  @param port 端口 */-(void)socket:(GCDAsyncSocket *)sockdidConnectToHost:(NSString *)host         port:(uint16_t)port{    NSLog(@"didConnectToHost");    //    gpstype:2015    //        name:賬號    //        pswd:密碼        NSLog(sock.isConnected?@"YES":@"NO");    if (sock.isConnected)    {/*
//nsstring上傳需要加"/n"分隔符方可上傳成功
[sock writeData:[@"ABCABCABCABCABCABC/n" dataUsingEncoding:NSUTF8StringEncoding] withTimeout:-1 tag:0]; */ NSDictionary* nsDictionaryUser=@{@"gpsinfo":@"Gpsinfo",@"pswd":self.passWord,@"other":@"666",@"gpstype":@2015,@"name":self.name}; if ([NSJSONSerialization isValidJSONObject:nsDictionaryUser]) { NSLog(@"isValidJSONObject"); NSError* error;
//先轉nsdata再轉nsstring是為了保證nsdictionary格式不變 NSData
*nsDataUser= [NSJSONSerialization dataWithJSONObject:nsDictionaryUser options:NSJSONWritingPrettyPrinted error:&error]; NSString* json=[[NSString alloc] initWithData:nsDataUser encoding:NSUTF8StringEncoding];// NSLog(@"nsDictionaryUser:%@",json); json=[json stringByReplacingOccurrencesOfString:@"/n" withString:@""];
//空格根據情況可以不去掉 json
=[json stringByReplacingOccurrencesOfString:@" " withString:@""]; json=[json stringByAppendingString:@"/n"]; NSLog(@"json:%@",json); [sock writeData:[json dataUsingEncoding:NSUTF8StringEncoding] withTimeout:-1 tag:0]; //保持讀取的長連接 [sock readDataWithTimeout:-1 tag:0]; if (error) { NSLog(@"localizedDescription:%@",[error localizedDescription]); NSLog(@"localizedFailureReason:%@",[error localizedFailureReason]); } else { } } } }

 
數據上傳成功了,后臺可以根據數據返回數據了


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 北宁市| 上蔡县| 上饶市| 曲靖市| 天峻县| 嘉义市| 鹿泉市| 武山县| 资源县| 宣城市| 洛宁县| 阜城县| 鹿泉市| 廉江市| 宁武县| 博爱县| 岑溪市| 天等县| 化州市| 潢川县| 太和县| 海林市| 会东县| 江北区| 永州市| 胶南市| 泰顺县| 梅河口市| 科尔| 大同县| 临朐县| 马尔康县| 满洲里市| 河间市| 怀仁县| 建昌县| 金门县| 彩票| 渭南市| 崇信县| 永顺县|