当前位置: 首页 > news >正文

怎么做淘宝客网站备案响应式网页设计ppt

怎么做淘宝客网站备案,响应式网页设计ppt,网页策划书 网站建设定位,哈尔滨建设工程信息网查询引言 gRPC让我们可以像本地调用一样实现远程调用#xff0c;对于每一次的RPC调用中#xff0c;都可能会有一些有用的数据#xff0c;而这些数据就可以通过metadata来传递。metadata是以key-value的形式存储数据的#xff0c;其中key是 string类型#xff0c;而value是[]s…引言 gRPC让我们可以像本地调用一样实现远程调用对于每一次的RPC调用中都可能会有一些有用的数据而这些数据就可以通过metadata来传递。metadata是以key-value的形式存储数据的其中key是 string类型而value是[]string即一个字符串数组类型。metadata使得client和server能够为对方提供关于本次调用的一些信息就像一次http请求的RequestHeader和ResponseHeader一样。http中header的生命周周期是一次http请求那么metadata的生命周期就是一次RPC调用。 使用场景 通过metadata机制,再加上grpc是基于http2.0的,我们可以实现将session id通过metadata放入http header的cookie字段, 通过添加元数据向服务器传递特定的信息例如授权令牌、用户标识、链路追踪ID等。服务器可以使用这些元数据来进行身份验证、授权、跟踪请求等操作。 go中使用metadata 1.proto文件 syntax proto3; option go_package .;proto; service Greeter {rpc SayHello (HelloRequest) returns (HelloReply); } //将 sessionid放入 放入cookie中 http协议 message HelloRequest {string name 1; }message HelloReply {string message 1; }2.新建metadata MD类型实际上是map,key是string,value是string类型的切片 type MD map[string] []string创建的时候可以向创建普通的map一样使用new关键字进行创建: //第一种方式md : metadata.New( map[string]string{ key1: val1,key2: val2})//第二种方式key不区分大小写会被统一转成小写。md : metadata.Pairs(key1 , val1,key1,val1-2//key1 will have map value []string{val1, val1-2}key2 , val2 ,)3.发送metadata 通过metadata.NewOutgoingContext方法将metadata数据转化为contex.context传入参数 package mainimport (OldPackageTest/grpc_test/protocontextfmtgoogle.golang.org/grpcgoogle.golang.org/grpc/metadata )func main() {//streamconn, err : grpc.Dial(127.0.0.1:50051, grpc.WithInsecure())if err ! nil {panic(err)}defer conn.Close()c : proto.NewGreeterClient(conn)//md : metadata.Pairs(timestamp, time.Now().Format(timestampFormat))md : metadata.New(map[string]string{name: bobby,pasword: imooc,})ctx : metadata.NewOutgoingContext(context.Background(), md)r, err : c.SayHello(ctx, proto.HelloRequest{Name: bobby})if err ! nil {panic(err)}fmt.Println(r.Message) }4.接收metadata 通过metadata.FromIncomingContext(ctx)方法从context中取出metadata数据 随后可以通过for range取出数据 package mainimport (contextfmtgoogle.golang.org/grpc/metadatanetgoogle.golang.org/grpcOldPackageTest/grpc_test/proto )type Server struct{}func (s *Server) SayHello(ctx context.Context, request *proto.HelloRequest) (*proto.HelloReply,error) {md, ok : metadata.FromIncomingContext(ctx)if ok {fmt.Println(get metadata error)}if nameSlice, ok : md[name]; ok {fmt.Println(nameSlice)for i, e : range nameSlice {fmt.Println(i, e)}}return proto.HelloReply{Message: hello request.Name,}, nil }func main() {g : grpc.NewServer()proto.RegisterGreeterServer(g, Server{})lis, err : net.Listen(tcp, 0.0.0.0:50051)if err ! nil {panic(failed to listen: err.Error())}err g.Serve(lis)if err ! nil {panic(failed to start grpc: err.Error())} }}err g.Serve(lis)if err ! nil {panic(failed to start grpc: err.Error())} }由于grpc是基于http2.0的,可以看出,其中还有一些http的字段
http://www.zqtcl.cn/news/882608/

相关文章:

  • 汕头整站优化营销推广网
  • 云服务器搭建网站教程加盟教育培训机构
  • 建筑网站设置工资单人换了怎么换太原做网站找谁
  • 网站做推广需要什么条件重庆网站推广哪家服务好
  • 怎样做理财网站wordpress做产品页教程视频
  • 官网模板建站塔山双喜北京网站建设兴田德润官网多少
  • 网站优化推广外包深圳专业网站建设定制
  • 网站开发aichengkeji元凤建盏简介
  • 移动端网站怎么制作asp做的网站如何发布
  • 做的网站用户密码在哪里找凡科申请的网站和qq空间一样吗
  • 如何自己做网站发布到服务器上面wordpress没有幻灯片
  • 闽侯县建设局网站企业建设网站例文
  • 家居类企业响应式网站搭建电商系统
  • 临沂哪里做网站比较好中国建设银行企业信息门户网站
  • 低价建网站提高网站订单转化率
  • 家居网站应该怎么做网站seo推广软件
  • 旅游网站建设报告关键词优化排名价格
  • 上海网站开发caiyiduo微信建微网站
  • 做网站和做网店哪个好用cms做单页网站怎么做
  • 阿里云有主体新增网站可以免费制作网页的网站
  • 网站备案幕布拍照是什么莱芜网络推广公司服务
  • 招个网站建设维护国家高新技术企业官网
  • 建设医疗网站做企业官网哪家公司好
  • 网站建设常见问题及解决办法站长网站大全
  • 二手网站建设模块500做网站
  • 建设展示型网站公司哪家好广告制作费和广告服务费区别
  • 网站排版设计欣赏网站建设制作设计seo优化南宁
  • 长春网站建设公司十佳wordpress在哪注册
  • 手机号码定位网站开发世界知名外贸网站
  • 广西南宁网站建设排行榜建设一个视频网站己18