Peoplecode - как да създадете бисквитки?

Опитваме се да създадем бисквитка в PeopleSoft Peoplecode, като използваме обекта %Response.

Кодът, който опитахме обаче, се проваля.

&YourCookie = %Response.AddCookie("YourCookieName", "LR");

Друг фрагмент, който се опитахме да създадем бисквитката

Local object &Response = %Response;
Local object &YourCookie;
&YourCookie = &Response.CreateCookie("YourCookieName");
&YourCookie.Domain = %Request.AuthTokenDomain;
&YourCookie.MaxAge = -1; /* Makes this a session cookie (default) */
&YourCookie.Path = "/";
&YourCookie.Secure = True; /* Set to true if using https (will still work with http) */
&YourCookie.Value = "Set the cookie value here. Encrypt sensitive information.";

Препратката към документа сочи към функции на IScript, наречени методи CreateCookie и т.н. .htm" rel="nofollow">http://docs.oracle.com/cd/E15645_01/pt850pbr0/eng/psbooks/tpcr/chapter.htm?File=tpcr/htm/tpcr21.htm

Те обаче не работят в Peoplecode. Ние нямаме знанията да създадем IScript или да го използваме. Всяко вникване в API на People code за бисквитки или IScript е много ценено.


person VC1    schedule 15.01.2015    source източник


Отговори (2)


Току-що тествах на PeopleTools 8.54.11 и успях да създам бисквитка, използвайки фрагмента, който предоставихте по-горе.

Открих, че имам проблем, ако задам

&YourCookie.Secure = True; 

в среда, в която използвах HTTP.

Ако зададете Secure на False, бисквитката ще бъде достъпна както в HTTP, така и в HTTPS

ако зададете Secure на True, бисквитката е достъпна само в HTTPS

Документация на PeopleTools 8.54, показваща метода CreateCookie

person Darryls99    schedule 23.09.2015

Опитвам се да направя това (същият кодов фрагмент) от signon peoplecode, версията на инструментите е 8.54.09. Мога да изпълня първите два реда код, но веднага щом редът с код, изпълняващ метода CreateCookie(), се изпълни, ме изхвърлят/завършвам на страницата за грешка при влизане.

Това изглежда подкрепя предишния отговор, който казва, че API е премахнал метода, но отговорът преди това казва, че е бил успешен на инструменти 8.54.11 -- означава ли това, че са го премахнали, след което са го върнали обратно и случайно съм остана с освобождаване, където беше премахнато? :-/

person Anne    schedule 19.11.2015
comment
Signon peoplecode няма достъп до обекта %request или %response и следователно не можете да зададете бисквитка от signon peoplecode. - person Darryls99; 20.11.2015
comment
Благодаря @Darryls99 - това обяснява и проблема ни. Опитвахме се да зададем бисквитката и в кода за хора на Signon. - person VC1; 02.12.2015