protobuf-c-rpc and protobuf-rpc are not related to gRPC. Based on your use
of ProtoBuf.Rpc.Transport.Xhr, it looks like they are using XML HTTP
Requests instead. The C++ gRPC client will not work with one of those
servers because it uses a completely different protocol.

On Thu, Aug 18, 2016 at 4:39 AM <[email protected]> wrote:

> I have new information about this problem...
>
> With a little modification on NodeJs code I got this error:
>
> Modification:
> app.get('/have_pswd', function (req, res) {
> var serv_req = new My_controller.Void();
> controller_svc.HavePassword(serv_req, function(error, serv_res) {
>   if (error !== null) throw error;
> res.json(serv_res);
> });
> });
>
> Error:
>  RangeError: offset is not uint
>     at checkOffset (buffer.js:580:11)
>     at SlowBuffer.Buffer.readUInt32LE (buffer.js:642:5)
>     at null.rpcImpl
> (/home/kabloc/work/server_controller/node_modules/protobuf-rpc/index.js:322:39)
>     at clazz.ServicePrototype.(anonymous function) [as HavePassword]
> (/home/kabloc/work/server_controller/node_modules/protobufjs/dist/protobuf.js:4050:38)
>     at EventEmitter.app.listen.host
> (/home/kabloc/work/server_controller/index.js:35:17)
>     at EventEmitter.emit (events.js:92:17)
>     at null._onTimeout
> (/home/kabloc/work/server_controller/node_modules/protobuf-rpc/index.js:86:50)
>     at Timer.listOnTimeout [as ontimeout] (timers.js:110:15)
>
> Somebody have an idea about it?
>
>
> On Wednesday, August 17, 2016 at 3:35:17 PM UTC-3, Kabloc Vacavoa wrote:
>>
>> OK, Sorry...
>>
>> Firstly sorry about my English...
>>
>> I have a project made in C that use protobuf-c-rpc to create a RPC
>> procedures, that interfaces with others application in C normally.
>>
>> Now I need to do an application in NodeJs that uses the same interface, I
>> tried by using protobuf-rpc:
>>
>> <CODE>
>>
>> var express = require('express');
>> var app = express();
>> var ProtoBuf = require('protobufjs');
>>     ProtoBuf.Rpc = require('protobuf-rpc');
>>
>> var builder = ProtoBuf.loadProtoFile("ControllerMessage.proto");
>> var My_controller = builder.build('MyPackage');
>> var controller_svc = new ProtoBuf.Rpc(My_controller.Controller, {
>> transport: new ProtoBuf.Rpc.Transport.Xhr( {sync: true} ),
>> url: 'http://127.0.0.1:5558'
>> });
>>
>> app.get('/have_pswd', function (req, res) {
>> var serv_req = new My_controller.Void();
>> controller_svc.HavePassword(serv_req, function(error, serv_res) {
>>   if (error !== null)
>> return res.status(500).send('error');
>> res.json(serv_res);
>> });
>> });
>>
>> var server = app.listen(9017, function(){
>> var host = server.address().address;
>> var port = server.address().port;
>> console.log('Example app listening at http://%s:%s', host, port);
>> });
>>
>> </CODE>
>>
>> When I send a GET to localhost:9017/have_pswd, I have a error(500).
>>
>>
>> After that I tried by using grpc++:
>>
>> protoc --proto_path=. --grpc_out=. --plugin=protoc-gen-grpc=`which
>> grpc_cpp_plugin` ControllerMessage.proto
>> protoc --proto_path=. --cpp_out=. ControllerMessage.proto
>>
>> <CODE>
>>
>> #include <grpc++/grpc++.h>
>>
>> #include "ControllerMessage.pb.h"
>> #include "ControllerMessage.grpc.pb.h"
>>
>> int main (int argc, char* argv[])
>> {
>>    std::unique_ptr<MyPackage::Controller::Stub>
>>          stub(MyPackage::Controller::NewStub(
>>                  grpc::CreateChannel("localhost:5558",
>> grpc::InsecureChannelCredentials())));
>>    grpc::ClientContext cxt;
>>    MyPackage::Void req;
>>    MyPackage::Boolean res;
>>
>>    stub->HavePassword(&cxt, req, &res);
>> }
>>
>>
>> </CODE>
>>
>> And on debug the line "stub->HavePassword(&cxt, req, &res);" make me wait
>> forever.
>>
>> I would like to know what I did wrong...
>>
>> Thanks...
>>
>> On Wed, Aug 17, 2016 at 10:51 AM, Nathaniel Manista <[email protected]
>> > wrote:
>>
>>> On Wed, Aug 17, 2016 at 6:13 AM, <[email protected]> wrote:
>>>
>>>> I worked in a project that implemented a protocol buffers RPC in C
>>>> using protobuf-c-rpc and now I'm trying develop a C++ or NodeJs client
>>>> using grpc but it not working.
>>>>
>>>
>>> How much more can you share with us about what's not working
>>> <http://www.chiark.greenend.org.uk/~sgtatham/bugs.html>?
>>> -Nathaniel
>>>
>>
>>
>>
>> --
>> --
>> echo Gur orfg jnl gb cerqvpg gur shgher vf gb vairag vg: -- Nyna Xnl | tr
>> N-ZA-Mn-za-m: A-Za-z.
>>
>> Kabloc Vacavoa
>> google.com/profiles/kabloc
>>
> --
> You received this message because you are subscribed to the Google Groups "
> grpc.io" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/grpc-io/32e31975-c088-437f-8f27-d5d7a7df7d30%40googlegroups.com
> <https://groups.google.com/d/msgid/grpc-io/32e31975-c088-437f-8f27-d5d7a7df7d30%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/CAPK2-4eACKnF6MH395aa_biKV7yzZZCVnVLidmG0dwdtvKt_vw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to