Unknown field 'content' in struct literal of type tycoon_services.Msg

1 028 zobrazení
Preskočiť na prvú neprečítanú správu

Jesse Thompson

neprečítané,
3. 5. 2022, 11:09:363. 5. 2022
komu: Protocol Buffers
sms_server.go

```
package main

import (
    "context"
    "log"
    "math/rand"
    "net"

    pb "tycoon.systems/tycoon-services/sms"
)

const (
    port = ":6000"
)

type SmsManagementServer struct {
    pb.UnimplementedSmsManagementServer
}

func (s *SmsManagementServer) CreateNewSmsBlast(ctx context.Context, in *pb.NewMsg) (*pb.Msg, error) {
    log.PrintF("Received: %v, %v", in.GetContent(), in.GetFrom())
    jobId := uuid.New()
    return &pb.Msg{content: in.GetContent(), from: in.getFrom(), jobId: jobId }, nil
}

func main() {
    lis, err := net.Listen("tcp", port)
    if err != nil {
        log.Fatalf("Failed to listen: %v", err)
    }

    s := grpc.NewServer()
    pb.RegisterSmsManagementServer(s, &SmsManagementServer{})
    log.Printf("Server listening at %v", lis.Addr())
    if err := s.Serve(lis); err != nil {
        log.Fatalf("Failed to server: %v", err)
    }
}
```

On line ```log.PrintF("Received: %v, %v", in.GetContent(), in.GetFrom())``` I am getting "undefined: log.PrintF go"

and on line ```return &pb.Msg{content: in.GetContent(), from: in.getFrom(), jobId: jobId }, nil``` I am getting "unknown field 'from' in struct literal of type tycoon_services.Msg go
"

My sms.proto is defined here 
```
syntax = "proto3";

package sms;

option go_package = "tycoon.systems/tycoon-services;tycoon_services";

service smsManagement {
    rpc CreateNewSmsBlast (NewMsg) returns (Msg) {}
}

message NewMsg {
    string from = 1;
    string content = 2;
}

message Msg {
    string from = 1;
    string content = 2;
    int32 jobId = 3;
}
```

The command I've ran to build the proto files is
```
$ protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative ./sms/sms.proto
```

I am unsure where Im going wrong. Im more familiar with Node.js as opposed to go. Why are my log methods undefined?

Jesse Thompson

neprečítané,
3. 5. 2022, 11:19:283. 5. 2022
komu: Protocol Buffers
Yikes, I feel pretty dumb. The tutorial I was watching had log.PrintF typed (I know the capital F looked really weird).

Although in regards to the unknown fields on my created sms blast I am a little confused.

I am sending an sms blast with content string and a from (User phone number) from Next.js to my node.js server via socket.io (none of this matters, but im saying it anyways). My goal is to send this object to my go server so that go can process a twilio job with https://github.com/hibiken/asynq

Jesse Thompson

neprečítané,
3. 5. 2022, 11:22:383. 5. 2022
komu: Protocol Buffers
Odpovedať všetkým
Odpovedať autorovi
Poslať ďalej
0 nových správ