# Is there any zend-http-client to work with Zend-diactoros-Request (PSR-7 Request)

**URL:** <https://discourse.laminas.dev/t/is-there-any-zend-http-client-to-work-with-zend-diactoros-request-psr-7-request/1017>\
**Category:** Components & MVC\
**Created:** [April 4, 2019, 4:09pm UTC](https://discourse.laminas.dev/t/is-there-any-zend-http-client-to-work-with-zend-diactoros-request-psr-7-request/1017 "2019-04-04T16:09:02Z")\
**Posts on this page:** 1\
**Showing post:** 8

<div class="post-metadata">

**Author:** ![matthew](https://yyz2.discourse-cdn.com/flex032/user_avatar/discourse.laminas.dev/matthew/32/14_2.png) [@matthew](https://discourse.laminas.dev/u/matthew)\
**Post date:** [April 4, 2019, 6:18pm UTC](https://discourse.laminas.dev/t/is-there-any-zend-http-client-to-work-with-zend-diactoros-request-psr-7-request/1017/8 "2019-04-04T18:18:01Z")

</div>

> [@mmuhasan](#):
>
> but nothing specific to zend-expressive

What do you mean by that, exactly?

- A client made by the ZF project you can use within Expressive?
- A client for making requests to Expressive projects?

In either case, it’s not necessary.

Expressive consumes [PSR-7](https://www.php-fig.org/psr/psr-7/). This means you can use any HTTP client capable of working with PSR-7 within your Expressive application. You can even pass them the current request instance directly!

In the second scenario, any HTTP client can make requests to an Expressive application. This includes (for obvious reasons) your web browser, as well as CLI clients such as cURL and HTTPie. You could also use any PHP-based HTTP client to make requests to your Expressive-based site. The point is: it’s all just HTTP.

> [@mmuhasan](#):
>
> I also found Gazzle 6 ([Guzzle, PHP HTTP client — Guzzle Documentation](http://docs.guzzlephp.org/en/stable/)) as a client. What is your opinion on this, how the httpplug is superior to Gazzle?

http-plug is an interesting project because it provides just a simple interface around using PSR-7 messages to make HTTP requests, and then provides either adapters for userland utilities (libcurl, sockets/streams) or for existing full-featured HTTP clients — including Guzzle. You could use the two of them together if you want to (I’ve done this a few times when working with APIs, so I can provide request middleware).

---

_[View the full topic](https://discourse.laminas.dev/t/is-there-any-zend-http-client-to-work-with-zend-diactoros-request-psr-7-request/1017)._
