Codeception / Codeception/lib-innerbrowser

[Lib/InnerBrowser] Send raw content in post body

Open
#61 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
PHP
Stars
87
Forks
20
PR merge metrics
No merged PRs in 30d

Description

#### What are you trying to achieve?
I am trying to call `sendAjaxPostRequest` and I would like to pass raw, unformatted parameters to the server.
For example
```php
$I->sendAjaxPostRequest('/some-endpoint', '{"foo": "bar"}');
// or even
$I->sendAjaxPostRequest('/some-endpoint', 'hello, how do you do?')
```

#### What do you get instead?
I get an error saying that the second parameter of sendAjaxPostRequest must be of type array. This array then gets converted using http_build_query and there is no way to pass raw data. See https://github.com/Codeception/Codeception/blob/3.1/src/Codeception/Lib/InnerBrowser.php#L189

When passing an array, the array always gets converted to http query params format of `foo=bar&example=codeception`

I think an alternative approach could be to use REST Module, which I think can accept raw content (or at least properly json_encode body).

Is there something I am missing? How would you suggest to test this endpoint?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.