testcafe icon indicating copy to clipboard operation
testcafe copied to clipboard

[docs] Describe how to change an URL in the `onRequest` method of the RequestHook

Open Aleksey28 opened this issue 2 years ago • 0 comments

What is your Scenario?

There isn't information about how to change an URL of the request in the RequestHook,

What are you suggesting?

There should be informed on how to change a request URL. It needs to change hostname, host, port, protocol and path of the e.requestOptions on values that are required for a new resource. Also, We should change the request headers depending on the new resource. Option url is read-only, which means that trying to change it doesn't alter the real url.

For example:

class CustomRequestHook extends RequestHook {
    onRequest (e) {
        e.requestOptions.protocol        = 'https:';
        e.requestOptions.host            = 'devexpress.github.io';
        e.requestOptions.hostname        = 'devexpress.github.io';
        e.requestOptions.port            = '';
        e.requestOptions.path            = '/testcafe/example/thank-you.html';
        e.requestOptions.headers['host'] = 'devexpress.github.io';
    }

    onResponse (responseEvent) {
    }
}

What alternatives have you considered?

No response

Additional context

No response

Aleksey28 avatar Jun 13 '22 12:06 Aleksey28