2015-10-20 80 views
0

我有卷曲调用注册客户,并在有效载荷我给它包含了客户的手机号码一个XML文件,密码这样的:LoadRunner的web_custom_request功能未返回JSON格式响应

<userAccount> 
     <mobile>01733156102</mobile> 
     <password>geheim01</password> 
    </userAccount> 

卷曲调用看起来如此:

curl -k -X POST -u qqcdi3:j5tmajpc -H "Content-Type: application/xml" -d @CDP_Reg_min_phone.xml https://c2b-i.natura.net/api/v3/clients/cdp/fr_FR/customers 

的卷曲调用工作正常在命令行上,并作为回应,我得到一个JSON enry这样是正确的:

{"userAccount":{"mobile":"01733156102","notificationLevel":"NEW_DEVICE","authenticationLevel":"ONE_FACTOR","gcid":"cfe71e26-c1bc-40d8-8bac-a9abca4b9316","secret 
KnowledgeActivated":false,"status":"UNCONFIRMED"}} 

但LoadRunner的,它并没有给出正确的回应,而不是我得到的回应是这样的:

912-byte response body for "https://c2b-i.natura.net/api/v3/clients/cdp/fr_FR/customers" (RelFrameId=1, Internal ID=1) 
Action.c(42):  <HTML><HEAD><TITLE></TITLE></HEAD><BODY onLoad="document.AUTOSUBMIT.submit();">This page i 
Action.c(42):  s used to hold your data while you are being authorized for your request.<BR><BR>You will 
Action.c(42):  be forwarded to continue the authorization process. If this does not happen automatically, 
Action.c(42):  please click the Continue button below.<FORM NAME="AUTOSUBMIT" METHOD="POST" ENCTYPE="app 
Action.c(42):  lication/x-www-form-urlencoded" ACTION="https://c2b-i.bmwgroup.net/siteminderagent/forms/l 
Action.c(42):  ogin.fcc?TYPE=33619969&REALMOID=06-2b2683bb-229b-491a-a393-d4f82eb82804&GUID=&SMAUTHREASON 
Action.c(42):  =0&METHOD=POST&SMAGENTNAME=-SM-Mq1XdSJKL8NdvBmymBJHpO%2bGYaqCW67pMeCPFiqK1zRIp6t8lJaHA1Bjh 
Action.c(42):  uK0SeOx&TARGET=-SM-https%3a%2f%2fc2b--i%2ebmwgroup%2enet%2fapi%2fv3%2fclients%2fcdp%2fde_D 
Action.c(42):  E%2fcustomers"><INPUT TYPE="HIDDEN" NAME="SMPostPreserve" VALUE="utfbo50P0fYWJGOGRvcDGWyPW 
Action.c(42):  loukE/tB1kOHP4h5tO/44uQ8EOErF6IdeqiBLyP"><INPUT TYPE="SUBMIT" VALUE="Continue"></FORM></BO 
Action.c(42):  DY></HTML>\r\n 

我对LoadRunner的调用如下:

web_custom_request("post_to_http_jms_provider", 
        "URL={URL_Param}", // save rest service url to param 
         "Method=POST", 
         "TargetFrame=", 
          "Resource=0", 
          "Referer=", 
          "EncType=text/xml; charset=utf-8",//here because the payload is an xml file 
          "Mode=HTTP", 
         "Body={REQUEST_XML_PARAM}",// // save xml request to param 
          LAST); 

和XML内容身体看起来如此:

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

"<newCustomer xmlns:enh=\"http://natura.com/gcdm/controller/v3/model\" xmlns:bupa=\"http://natura.com/gcdm/controller/v3/model/businessPartner\" xmlns:cr=\"http://natura.com/gcdm/controller/v3/model/campaignResponse\" xmlns:deal=\"http://natura.com/gcdm/controller/v3/model\" xmlns:cupr=\"http://natura.com/gcdm/controller/v3/model/businessPartner/customerProfile\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"C:/svn/c2b/gcdm-api/trunk/src/main/resources/schema/gcdm-customer-schema.xsd\">" 
    "<userAccount>" 
     "<mobile>01733156102</mobile>" 
     "<password>geheim01</password>" 
    "</userAccount>" 
"</newCustomer>"; 

我不知道该怎么做才能得到一个json响应格式

回答

0

使用web_reg_save_param(“JsonData”,“LB =”,“RB =”,“Search = Body”,LAST);并在运行时设置中启用Java脚本>首选项>设置高级选项,单击选项按钮>在Web Javascript部分,启用运行Javascript代码为Yes。您需要创建一个js文件,如here所述。

+0

我发现没有创建js文件的链接内容。你能把它放在这里吗? – otmann