#json #groovy
#json #groovy
Вопрос:
Рассмотрим, что это пример запроса..
Теперь я должен опубликовать это .. и как только будут добавлены подробности, я хочу проверить, что правильные данные добавлены только в базу данных. Я извлек значение из базы данных.
Я знаю, как извлечь значение из ответа… Может ли кто-нибудь помочь мне получить значение из запроса JSON… Например, мне нужно извлечь firstname, lastname и т.д., Может ли кто-нибудь помочь мне в этом?
Запрос:
POST /MMNRS/1/consumer HTTP/1.1
Host: http://subdomain.example.com
Device-ID: 2b6f0cc904d137be2e1730235f5664094b831186
Client-Type: IPHONE
Client-Version: 1.0
User-Agent: Tap/1.0 (iPhone; U; iOS 4.1; en_gb)
Accept: application/json
X-Request-ID: 10002
{
“consumerDetails”:
{
“title”:”Mr”,
“firstName”:”John”,
“lastName”: “Doe”,
“dateOfBirth”:”12/05/1956”,
“email”:”johndoe@gmail.com”,
“encryptedPassword”:”XXXXYYYYZZZZ”,
“acceptedTermsAndConditionsFlag”:true,
“acceptedPromotionsAndOffersFlag” : true
“versionNumber”: 0
}
“twk”: “XXYYZZVVSS”
“passwordLength”: 7
“encryptedConfirmPassword”:”XXXXYYYYZZZZ”,
“confirmPasswordLength”: 7
“confirmEmail”:”johndoe@gmail.com”,
“securityQuestionAnswers” :
[
{
“securityQuestionId” : 1001,
“securityAnswer” : “Rufus the Dog”
“versionNumber”: 0
},
{
“securityQuestionId” : 1002,
“securityAnswer” : “Beethovan”
“versionNumber”: 0
}
],
}
Комментарии:
1. Вы не указали, какой язык вы используете.
2. я использую groovy script
3. определение groovyUtils=новый com.eviware.soapui.support.GroovyUtils(контекст); определение holder = TestRunner.TestCase.testSteps[«PersonalDetails»].TestRequest.requestКонтент Из двух приведенных выше строк извлекает полный запрос. Теперь мне нужно извлечь только firstname.. это не работает.. def p_url = holder.getNodeValue(«//ns1:consumerDetails/ns1:FirstName:); Любая помощь по этому поводу?
Ответ №1:
Последняя версия Groovy (1.8) поставляется со встроенным анализатором / конструктором JSON
Комментарии:
1. кажется, мы можем их распечатать .. мне нужно извлечь и присвоить одной переменной..
2. @user611315 итак, вы просто присваиваете их переменным… если, глядя на пример, вы хотели узнать заглавную
def capital = states.state[0].capital
3. Учтите, что я хочу извлечь заголовок для своего запроса. это правильно или нет? импортируйте roovy.json. JsonBuilder импортирует groovy.json. JsonOutput def json = new JsonBuilder() def title=данные потребителя.consumerdetails[0].title log.info (название)