顧客を登録するためにcurlを呼び出し、ペイロードで顧客の携帯電話番号とパスワードを含むxmlファイルを次のように指定します。
<userAccount>
<mobile>01733156102</mobile>
<password>geheim01</password>
</userAccount>
curl 呼び出しは次のようになります。
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
curl 呼び出しはコマンドラインで正常に機能し、応答として次のような正しい json エントリを取得します。
{"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 の応答形式を取得するために何をすればよいかわかりません