스칼라는 저에게 새로운 것이고, 개울 dsl을 떠나 자마자 문제가 있습니다.도움이 필요하십니까? 목록 및/또는 맵을 반복하는 방법
제 경우에는 JSON 형식의 많은 메일로 응답하는 API (Mailhog)를 호출합니다. 나는 모든 가치를 부여 할 수 없다. "jsonPath"와 함께 필요하고 "정규식"도 필요합니다. 그게지도와 내가 반복하고 각 값을 저장하는 데 필요한 목록으로 연결됩니다.
.check(jsonPath("$[*]").ofType[Map[String,Any]].findAll.saveAs("id_map"))
.check(regex("href=3D\\\\\"(.*?)\\\\\"").findAll.saveAs("url_list"))
은 처음에는 루프에 "확인"을 원하지만 어떤이 "수"- 요청이 너무 반복없이 반복 찾을 수 did'nt. 그래서지도와 목록입니다.
1)지도의 모든 가치가 필요하며 다음 foreach 루프로 문제를 해결할 수있었습니다.
.foreach("${id_map}", "idx") {
exec(session => {
val idMap = session("idx").as[Map[String,Any]]
val ID = idMap("ID")
session.set("ID", ID)
})
.exec(http("Test")
.get("/{ID}"))
})}
2) 나는 목록의 모든 3 번째 값이 필요하고 그들에게 요청을한다. 이 작업을 수행하기 전에 문자열의 일부를 대체해야합니다. 나는 그 (것)들을 검사하고있는 동안 끈의 부분을 대체하는 것을 시도했다. findAll에서는 작동하지 않습니다.
.check(regex("href=3D\\\\\"(.*?)\\\\\"").findAll.transform(raw => raw.replace("""=\r\n""","")).saveAs("url"))
목록에있는 모든 문자열의 일부를 어떻게 바꿀 수 있습니까? 또한 목록의 모든 세 번째 요소에 대해 get 요청을 만들 수 있습니다.
위와 같은 foreach 구조로 작동시키지 못합니다.