| (async function(testRunner) { |
| var {page, session, dp} = await testRunner.startBlank( |
| `Tests that same site cookies are included with POST request when interception is enabled.`); |
| |
| await session.protocol.Network.clearBrowserCache(); |
| await session.protocol.Network.clearBrowserCookies(); |
| await session.protocol.Network.setCacheDisabled({cacheDisabled: true}); |
| await session.protocol.Network.enable(); |
| await session.protocol.Runtime.enable(); |
| |
| await dp.Network.setRequestInterception({patterns: [{}]}); |
| dp.Network.onRequestIntercepted(e => { |
| dp.Network.continueInterceptedRequest({interceptionId: e.params.interceptionId}); |
| }); |
| |
| dp.Page.navigate({url: 'http://127.0.0.1:8000/inspector-protocol/network/resources/cookie-same-site.pl'}); |
| await dp.Network.onceLoadingFinished(); |
| |
| const cookie = await session.evaluate(` |
| let form = document.createElement('form'); |
| form.action = '/inspector-protocol/network/resources/echo-headers.php?headers=HTTP_COOKIE'; |
| form.method = 'POST'; |
| let data = document.createElement('input'); |
| data.type = 'hidden'; |
| data.name = 'data'; |
| data.value = 1; |
| form.appendChild(data); |
| |
| let submit = document.createElement('input'); |
| submit.type = 'submit'; |
| form.appendChild(submit); |
| document.body.appendChild(form); |
| |
| submit.click(); |
| `); |
| |
| const requestId = (await dp.Network.onceLoadingFinished()).params.requestId; |
| const content = (await dp.Network.getResponseBody({requestId: requestId})).result.body; |
| testRunner.log(`content: ${content}`); |
| testRunner.completeTest(); |
| }) |