2017-01-12 6 views
0

HttpClient를 사용하여 Java 도구를 개발하여 프로그래밍 방식으로 VuGen 스크립트를 성능 센터에 업로드합니다.성능 센터 API를 사용하여 스크립트 업로드

  1. 인증하고 세션 쿠키를 저장 -/LoadTest/휴식/인증 점/
  2. 업로드에게 스크립트를 인증 -/LoadTest/휴식/도메인/[MYDOMAIN]/프로젝트/[MyProject를을 : 어떻게 내 도구 것은 있습니다 않는다 ]/스크립트
  3. 로그 아웃 -/LoadTest/휴식/인증 점/

http://alm-help.saas.hpe.com/en/12.53/api_refs/Performance_Center_REST_API/Performance_Center_REST_API.htm#scripts.htm

하여 인증을 로그 아웃하고 제대로 작동 단계를 로그 아웃합니다. 즉, 인증에서 세션 쿠키를 가져올 수 있으며 로그 아웃 할 때 쿠키가 만료되도록 설정할 수 있습니다. 그러나 업로드 스크립트 단계에서 항상 HTTP 401 오류가 발생합니다.

401 - 권한이 없음 : 잘못된 자격 증명으로 인해 액세스가 거부되었습니다.

사용자가 제공 한 자격 증명을 사용하여이 디렉터리 또는 페이지를 볼 수있는 권한이 없습니다.

이것이 내가 Performance Center 서버에 보낸 것입니다.

POST http://[PC-Host]/LoadTest/rest/domains/[MyDomain]/projects/[MyProject]/Scripts HTTP/1.1 
Content-Type: multipart/form-data 
Content-Length: 31367 
Host: [PC-Server] 
Connection: Keep-Alive 
User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_111) 
Cookie: LWSSO_COOKIE_KEY=1y8TbNawvT976BENi4oT1hW6_dCMwcz-eohdFDqWpfIXsW2tUMYHZuHZbUBg9wFQwFnQgfetx5I2EvCfaA5y-g..; QCSession=NjA3NTY5O0JWK0ZjSExzWStwTFZPd2xZSXZ5VlEqKjtQQyBSRVNUIEFQSSBDbGllbnQ7IDsg 
Accept-Encoding: gzip,deflate 

--_NK2aWTiwhT6VV0TIxkUIaHRx0GhDBZ2LOsY8 
Content-Disposition: form-data; name="xml" 
Content-Type: application/xml; charset=ISO-8859-1 
Content-Transfer-Encoding: 8bit 

<Script xmlns="http://www.hp.com/PC/REST/API"><TestFolderPath>Subject\DEV\abc</TestFolderPath><Overwrite>true</Overwrite><RuntimeOnly>true</RuntimeOnly><KeepCheckedOut/></Script> 
--_NK2aWTiwhT6VV0TIxkUIaHRx0GhDBZ2LOsY8 
Content-Disposition: form-data; name="file"; filename="abc.zip" 
Content-Type: application/octet-stream 
Content-Transfer-Encoding: binary 

## binary of zipped vugen script ## 
--_NK2aWTiwhT6VV0TIxkUIaHRx0GhDBZ2LOsY8-- 

내가 뭘 잘못하고 있는지 전혀 모르겠다. 아이디어가 있습니까?

답변

0

문제가 해결되었습니다. XML 인코딩은 비난 받아야했습니다. 멀티 파트 구조를보다 잘 제어 할 수 있도록 툴 벨트를 요청했습니다.

+0

원본 포스터를 사용하고 있습니까? – ajmccall

+0

호기심. 성능 센터에 저장하는 기능이 VUGEN에 내장되어 있습니다. –

+0

아니요, 저는 원래의 포스터가 아닙니다. 나는 "저도 그렇지만 파이썬과 함께"거기에 주석을 달고 "XML 인코딩은 비난했습니다"라고 주석을 달았습니다. 그러나 나는 대답의 실을 꿰기의 혼란스러워 보인다. 또는 뭔가. 미안합니다. 아, 이제 알겠습니다 : "2 일 전에 검토에서 삭제되었습니다". 코멘트 체인이 왜 의미가 없는지 설명합니다. XML 관련 주석도 삭제하는 것이 가장 좋습니다. – Hogbert