2017-01-12 12 views
0

Я разрабатываю инструмент Java с использованием HttpClient для программной загрузки сценария VuGen в Performance Center. Что мой инструмент действительно являются:API-интерфейс Performance Center для загрузки сценария

  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

Идентифицироваться и Выйти шаг работают правильно. А именно, я могу получить cookie сеанса от проверки подлинности и установить cookie для истечения срока действия при выходе из системы. Однако на этапе загрузки сценария я всегда получаю ошибку 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. Я также перешел к запросу toolbelt, чтобы иметь больше контроля над многочастной структурой.

+0

Вы являетесь оригинальным плакатом? – ajmccall

+0

Любопытно, что эта функциональность для сохранения в центр производительности встроена в VUGEN –

+0

Нет, я не оригинальный плакат. Я отправил комментарий «я тоже, но с python», а затем прокомментировал, что «виновата кодировка xml». Но кажется, что я путаюсь с резьбой ответов. Или что-то. Извини за это. О, я вижу сейчас: «удален из обзора 2 дня назад». что объясняет, почему цепочка комментариев не имеет смысла. Лучше также удалить комментарий, связанный с XML. – Hogbert