-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pure php grpc #1
base: master
Are you sure you want to change the base?
Conversation
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please visit https://cla.developers.google.com/ to sign. Once you've signed, please reply here (e.g.
|
<?php | ||
require dirname(__FILE__).'/vendor/autoload.php'; | ||
|
||
$client = new \Grpc\Gateway\Testing\EchoServiceClient('localhost:9091', []); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we re-use the plugin from grpc-php(C-core)? Generated Client doesn't have the default value for it. Something like credentials must be set at the second parameter.
{ | ||
$active = null; | ||
while (!$this->stream_end || $this->received_data->valid()) { | ||
if($this->received_data->valid()){ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if
=> while
or add
if($active<=0) break;
to line 137 because curl_multi_select
is blocked until activity or timeout. If there are no more activity with valid $this->received_data
, every yield will wait for a time-out time.
@@ -0,0 +1,13 @@ | |||
{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's skip the example code for now. As we probably want to use the same proto defined in grpc report instead of using echo.prot here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All example related files are removed.
net/grpc/web/grpc/composer.json
Outdated
@@ -0,0 +1,24 @@ | |||
{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Move this to /src/Grpc folder. The dir structure would be something like:
/src
/test
/doc
...
Try to implement gRPC with pure PHP.
Use curl to send and receive rpc with http2_prior_knowledge.