スポンサーリンク
Apigeeのservice calloutではcookieを扱うオプションが存在しないため、手動でヘッダを操作してあげる必要があります。今回はその方法をまとめました。
関連記事 : cookieの仕組みを理解するためにcurlでオプションを使わずcookieを設定してみる
こんな感じでポリシーが並ぶはずです
まず最初にservice calloutでリクエストを送ります。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout async="false" continueOnError="false" enabled="true" name="first_request">
<DisplayName>first_request</DisplayName>
<Properties/>
<Request clearPayload="true" variable="myRequest">
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
</Request>
<Response>calloutResponse-01</Response>
<HTTPTargetConnection>
<Properties/>
<URL>https://sample_web_page.example.com</URL>
</HTTPTargetConnection>
</ServiceCallout>
(URLは適当です)
このリクエストに対するレスポンスは calloutResponse-01
に格納されます。
先程のレスポンスからcookieの情報を抜き出します。これにはPythonを使います。
Pythonポリシーの設定とPythonスクリプト両方を作成します。
Python Policyのほう
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Script async="false" continueOnError="false" enabled="true" name="restore_cookies_policy">
<DisplayName>restore_cookies_policy</DisplayName>
<Properties/>
<ResourceURL>py://restore_cookies.py</ResourceURL>
</Script>
Pythonスクリプトの中身
### restore_cookies.py
cookie_list = []
# calloutResponseから"Set-Cookie"ヘッダを取り出す。複数ある場合はlistで取得される
all_cookie = flow.getVariable("calloutResponse-01.header.Set-Cookie.values")
# 各要素は "xx=zz; Path=/; HttpOnly" という内容になっているので、 "xx=zz" だけを取り出す
for cookie in all_cookie:
l = cookie.split(';')
cookie_list.append(l[0])
# 抜き出したcookieをまとめる
# key1=value1; key2=value2; .... のように";"で区切る
cookie = '; '.join(cookie_list)
# apigeeのフローに変数"cookie"として戻す
flow.setVariable("cookie", cookie)
先程変数化したcookieを付けて再度APIコールします。
service calloutポリシー全文
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout async="false" continueOnError="false" enabled="true" name="second_request">
<DisplayName>second_request</DisplayName>
<Properties/>
<Request clearPayload="true" variable="myRequest2">
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
<Set>
<Headers>
<Header name="Cookie">{cookie}</Header>
</Headers>
</Set>
</Request>
<Response>calloutResponse-02</Response>
<HTTPTargetConnection>
<Properties/>
<URL>https://sample_web_page.example.com/login</URL>
</HTTPTargetConnection>
</ServiceCallout>
上記の中で重要なのは
<Set>
<Headers>
<Header name="Cookie">{cookie}</Header>
</Headers>
</Set>
という部分です。このパラメータをつけることによりCookieを付与してAPIコールすることになります。
スポンサーリンク
2022/05/20 22:11:57
2022/05/20 22:43:36
sildenafil wiki sildenafil citrate reviews https://sildenafilkiol.com/
2022/04/08 09:33:51
peptides tadalafil tadacip (tadalafil)
2022/04/09 23:42:38
online order viagra generic viagra free viagra sample viagra story
2022/04/10 03:46:53
п»їKeyword aurochem sildenafil reviews
2022/04/10 02:49:48
cialis coupon purchase cialis
2022/04/10 11:07:29
tadalafil research liquid how long does it take for tadalafil to work
2022/04/10 12:11:35
viagra overdose viagra samples
2022/04/12 04:34:45
over the counter viagra india viagra gel pills
2022/04/13 23:11:14
ralphs pharmacy albany college of pharmacy
2022/04/15 10:31:20
cheap generic levitra online levitra and blood pressure
2022/04/15 15:09:18
cheap brand cialis 20 mg cialis online paypal payment
2022/04/15 15:41:03
pharmacy tech salary in canada pharmacy technician online school
2022/04/15 17:36:37
all in one pharmacy phentermine online pharmacy
2022/04/15 23:00:47
sildenafil dosage for erectile dysfunction buy real viagra from canada
2022/04/17 00:50:32
cialis and poppers cialis sales
2022/04/18 12:03:51
online pharmacy oxycodone 30mg canadian pharmacy generic cialis
2022/04/18 19:50:07
ivermectin for scabies dosing ivermectin horse dewormer
2022/04/18 18:50:48
viagra for sale online australia buy brand name viagra
2022/04/18 20:29:39
how much 1.87 ivermectin for horses do i give 15 lb dog sheep drench ivermectin for dogs
2022/04/18 23:46:23
buy tadalafil online tadalafil generico
2022/04/20 08:25:10
20 mg sildenafil 680 buy viagra online canada paypal
2022/04/21 18:17:26
how levitra works levitra generique 40 mg
2022/04/22 00:56:48
northeast pharmacy canada canadian pet meds pharmacy
2022/04/22 03:07:33
levitra costs which has less side effects viagra cialis o levitra
2022/04/22 03:42:56
long term cialis use viagra vs cialis vs levitra reviews
2022/04/22 06:54:13
cialis south africa online cialis drug
2022/04/23 12:51:54
online pharmacy tech order from canadian pharmacy
2022/04/24 23:04:21
online pharmacy australia xanax canadian online pharmacy
2022/04/25 05:49:29
pharm cialis professional
2022/04/25 07:16:05
consumer reviews canadian pharmacies american online pharmacy
2022/04/25 07:49:38
is the canadian pharmacy legit canadian pharmacy online androgel
2022/04/25 11:26:57
mexican border pharmacies pharmacy book store
2022/04/30 00:27:35
humana rx mail order pharmacy Viagra Professional https://dtupharmyjn.com/
2022/05/01 09:42:37
levitra discount cards levitra prescription assistance https://glevitrargu.com/
2022/05/01 16:34:27
stromectol for scabies dosage ivermectin canada buy https://stromectolujlo.com/
2022/05/01 18:01:21
mail order pharmacies phendimetrazine online pharmacy https://jzpharmacyukj.com/
2022/05/01 18:33:49
generic viagra india how to get viagra online https://sgiviagraikn.com/
2022/05/01 21:45:08
sildenafil ranbaxy sildenafil teva 100mg https://sildenafilkiol.com/
2022/05/04 02:43:59
brand cialis trial pack free sample of cialis https://dccialisxvf.com/
2022/05/05 18:13:25
where to buy viagra in mexico viagra 100mg tablet online in india https://aviagrasbt.com/
2022/05/05 18:54:23
levitra no rx levitra and premature ejaculation https://xclevitradb.com/
2022/05/05 19:27:58
hy-vee pharmacy cvs pharmacy jobs
2022/05/09 11:55:50
uso medical abbreviation https://keys-chloroquinehydro.com/
2022/05/09 20:45:34
cialis egypt best price for cialis 20 mg https://dccialisxvf.com/
2022/05/11 04:33:37
coupon levitra levitra professional samples https://glevitrargu.com/
2022/05/11 11:40:34
cost of genuine viagra sildenafil pharmacy prices https://aviagrasbt.com/
2022/05/11 11:59:53
levitra vs cialis forum levitra pen https://xclevitradb.com/
2022/05/11 12:26:20
Malegra DXT pharmacy technician certification online
2022/05/11 16:08:33
2022/05/11 16:07:40
sildenafil where to buy sildenafil 100mg tablet https://sildenafilkiol.com/
2022/05/12 10:01:01
provigil 100mg cost
2022/05/13 08:04:22
brand modafinil 100mg modafinil tablet
2022/05/14 22:12:39
dissertation title page
get dissertation help
help with dissertation writing uk
2022/05/15 16:16:21
2022/05/15 21:16:03
dissertation writing guide
dissertation proposal writing
writing abstract dissertation
2022/05/16 08:03:14
levitra and food levitra customer reviews https://glevitrargu.com/
2022/05/16 15:29:39
top dissertation writing service
writing results for dissertation
defending your dissertation
2022/05/16 15:49:29
levitra fiyat levitra para que es https://xclevitradb.com/
2022/05/16 16:27:30
my canadian pharmacy rx reviews pharmacy online 365 legit
2022/05/18 18:56:53
order modafinil 100mg buy provigil 200mg online buy provigil 100mg without prescription
2022/05/18 19:52:45
erythromycin allergy low dose erythromycin
2022/05/18 22:04:43
modafinil 200mg brand modafinil pill
2022/05/19 02:16:48
cialis over the counter in spain cialis without persriction https://dccialisxvf.com/
2022/05/19 09:43:09
help write my dissertation
doctoral dissertation help business
find a dissertation help tutor
2022/05/19 12:37:00
provigil 200mg pill order provigil pills modafinil 200mg pills
2022/05/19 17:25:29
2022/05/20 03:38:41
dissertation titles
online cheap dissertation help
dissertation writing service atlanta ga
2022/05/20 11:06:22
can you take viagra and levitra together levitra price https://glevitrargu.com/
2022/05/20 17:56:49
where can i buy viagra over the counter in usa price of viagra in india https://aviagrasbt.com/
2022/05/20 19:01:50
levitra goodrx levitra bayer https://xclevitradb.com/
2022/05/20 19:01:38
buy modafinil 100mg order modafinil 200mg generic
2022/05/20 19:33:01
mexican pharmacy weight loss prime rx pharmacy software