iOS開發後台請求報錯,幫忙看下XML格式哪裡有問題 急急急!!!大神們

來源:互聯網
上載者:User
關鍵字 php java ios
報錯:Entity: line 1: parser error : Start tag expected, '<' not found
以下為請求XML,用的是ASIHTTPRequest請求架構,不知錯在何處
com.portal.android.ExecuteAndroidchangeState

請求資料代碼:
NSString *kvr = [NSString stringWithFormat:@"",@"",cell.shipNameTextField.text,cargoRemark,self.dockModel.t2,self.berthModel.t2,cargoType,self.cargoModel.t2,self.cargoModel.t1,cell.cargoWeightTextField.text,cell.billInfoTextField.text,@"",cell.delegateTextField.text,@"NODECL",appDelegate.userInfo.ORG_NAME,appDelegate.userInfo.ORG_ID,appDelegate.userInfo.USER_ID,appDelegate.userInfo.USER_NAME,appDelegate.userInfo.USER_ID,appDelegate.userInfo.USER_NAME,self.personModel.t2];
[req sendRequest:@"com.portal.android.ExecuteAndroid" metherName:@"changeState" kvrStr:kvr andTag:4001 andUrl:WebServeUrl];

  • (void)sendRequest:(NSString )classPath metherName:(NSString )metherName kvrStr:(NSString )kvrStr andTag:(NSInteger) tag andUrl:(NSString )url
    {
    __block ASIHTTPRequest *request = [[ASIHTTPRequest alloc] initWithURL:[NSURL URLWithString:url]];
    // NSLog(@"%@",WebServeUrl);
    NSMutableString *requestXml = [[NSMutableString alloc] init];
    [requestXml appendString:@""];
    [requestXml appendString:@""];
    [requestXml appendString:@""];
    NSString *name = [NSString stringWithFormat:@"%@%@",classPath,metherName];
    [requestXml appendString:name];

    [requestXml appendString:kvrStr];
    [requestXml appendString:@""];
    [requestXml appendString:@""];

    //NSLog(@"%@",requestXml);
    NSData *requestData = [requestXml dataUsingEncoding:NSUTF8StringEncoding];

    [request appendPostData:requestData];
    [request setRequestMethod:@"post"];

    //請求執行完的回掉
    [request setCompletionBlock:^{

       //NSLog(@"Success");   NSData *decompressData = [request responseData];   GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithData:decompressData options:0 error:Nil];   GDataXMLElement *rootElement = [doc rootElement];   NSArray *result = [rootElement elementsForName:@"result"];   for (GDataXMLElement *response in result) {       NSString *code = [[response attributeForName:@"code"] stringValue];       NSString *msg = [[response attributeForName:@"msg"] stringValue];       //01是成功,其餘是錯誤       if (![code isEqualToString:@"01"]) {           [self showAlert:msg];       } else {           NSArray *datasetArray = [rootElement elementsForName:@"kvdata"];           NSArray *kvadaArray = [rootElement elementsForName:@"dataset"];           GDataXMLElement *data = [kvadaArray objectAtIndex:0];           NSArray *dataArray = [data elementsForName:@"data"];           if ([datasetArray count] > 0) {               [_delegate didReceiveData:datasetArray andTag:tag];           }else{               [_delegate didReceiveData:dataArray andTag:tag];           }       }   }   request = nil;

    }];

    //異常出現
    [request setFailedBlock:^{

       //NSLog(@"Failed");   [self showAlert:@"網路請求失敗,請稍後再試"];   //        [_delegate didFairToReceiveData:nil andTag:tag];

    }];

    [request startAsynchronous];
    }

回複內容:

報錯:Entity: line 1: parser error : Start tag expected, '<' not found
以下為請求XML,用的是ASIHTTPRequest請求架構,不知錯在何處
com.portal.android.ExecuteAndroidchangeState

請求資料代碼:
NSString *kvr = [NSString stringWithFormat:@"",@"",cell.shipNameTextField.text,cargoRemark,self.dockModel.t2,self.berthModel.t2,cargoType,self.cargoModel.t2,self.cargoModel.t1,cell.cargoWeightTextField.text,cell.billInfoTextField.text,@"",cell.delegateTextField.text,@"NODECL",appDelegate.userInfo.ORG_NAME,appDelegate.userInfo.ORG_ID,appDelegate.userInfo.USER_ID,appDelegate.userInfo.USER_NAME,appDelegate.userInfo.USER_ID,appDelegate.userInfo.USER_NAME,self.personModel.t2];
[req sendRequest:@"com.portal.android.ExecuteAndroid" metherName:@"changeState" kvrStr:kvr andTag:4001 andUrl:WebServeUrl];

  • (void)sendRequest:(NSString )classPath metherName:(NSString )metherName kvrStr:(NSString )kvrStr andTag:(NSInteger) tag andUrl:(NSString )url
    {
    __block ASIHTTPRequest *request = [[ASIHTTPRequest alloc] initWithURL:[NSURL URLWithString:url]];
    // NSLog(@"%@",WebServeUrl);
    NSMutableString *requestXml = [[NSMutableString alloc] init];
    [requestXml appendString:@""];
    [requestXml appendString:@""];
    [requestXml appendString:@""];
    NSString *name = [NSString stringWithFormat:@"%@%@",classPath,metherName];
    [requestXml appendString:name];

    [requestXml appendString:kvrStr];
    [requestXml appendString:@""];
    [requestXml appendString:@""];

    //NSLog(@"%@",requestXml);
    NSData *requestData = [requestXml dataUsingEncoding:NSUTF8StringEncoding];

    [request appendPostData:requestData];
    [request setRequestMethod:@"post"];

    //請求執行完的回掉
    [request setCompletionBlock:^{

       //NSLog(@"Success");   NSData *decompressData = [request responseData];   GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithData:decompressData options:0 error:Nil];   GDataXMLElement *rootElement = [doc rootElement];   NSArray *result = [rootElement elementsForName:@"result"];   for (GDataXMLElement *response in result) {       NSString *code = [[response attributeForName:@"code"] stringValue];       NSString *msg = [[response attributeForName:@"msg"] stringValue];       //01是成功,其餘是錯誤       if (![code isEqualToString:@"01"]) {           [self showAlert:msg];       } else {           NSArray *datasetArray = [rootElement elementsForName:@"kvdata"];           NSArray *kvadaArray = [rootElement elementsForName:@"dataset"];           GDataXMLElement *data = [kvadaArray objectAtIndex:0];           NSArray *dataArray = [data elementsForName:@"data"];           if ([datasetArray count] > 0) {               [_delegate didReceiveData:datasetArray andTag:tag];           }else{               [_delegate didReceiveData:dataArray andTag:tag];           }       }   }   request = nil;

    }];

    //異常出現
    [request setFailedBlock:^{

       //NSLog(@"Failed");   [self showAlert:@"網路請求失敗,請稍後再試"];   //        [_delegate didFairToReceiveData:nil andTag:tag];

    }];

    [request startAsynchronous];
    }

由於把請求資料加密了,請求回調時處理資料未解密,所以導致了錯誤

格式沒錯哦,你用一個支援xml的ide開啟一下就可以知道有沒有語法錯誤。。。

請求資料是不是有錯誤?
能不能把你列印請求資料的代碼貼出來

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.