kratos
2024-07-06 本文已影响0人
SecondRocker
install kratos
upgrade
kratos upgrade
安装依赖
make init
如果 生成的grpc代码是SupportPackageIsVersion8
需要更新 mod依赖google.golang.org/grpc
为v1.65.0
生成proto文件
kratos proto add api/path/xxx.proto
编辑proto文件
注意http
syntax = "proto3";
package api.kvstore.v1;
import "google/api/annotations.proto";
option go_package = "leegoo/api/kvstore/v1;v1";
option java_multiple_files = true;
option java_package = "api.kvstore.v1";
option java_outer_classname = "Kvstorev1";
service Kv {
// rpc Set (KvRequest) returns (KvReply) {
// option (google.api.http) = {
// post: "/kvstore"
// };
// };
rpc Get (KvRequest) returns (KvReply) {
option (google.api.http) = {
get: "/kvstore/{key}"
};
};
rpc Del (KvRequest) returns (KvReply) {
option (google.api.http) = {
delete: "/kvstore/{key}"
};
};
}
message KvRequest {
string key = 1;
}
message KvReply {
int32 code = 1;
string data = 2;
}
生成client文件
kratos proto client proto路径
生成server文件
kratos proto server proto路径
会在 internal/service下生成对应的service文件
修改internal/server
下的grpc(NewGRPCServer)、 (http)NewHTTPServer,加入上面生成的service
修改internal/service/service.go文件,为wire增加依赖(新生成的service)
var ProviderSet = wire.NewSet(NewKvService, NewGreeterService)
wire生成依赖
make generate
配置
修改configs/config.yml,加入需要的配置
修改internal/conf/conf.proto,增加需要的配置
make config
生成配置代码