Create & Init Project...
This commit is contained in:
65
app/service/main/passport-sns/api/BUILD
Normal file
65
app/service/main/passport-sns/api/BUILD
Normal file
@ -0,0 +1,65 @@
|
||||
load(
|
||||
"@io_bazel_rules_go//proto:def.bzl",
|
||||
"go_proto_library",
|
||||
)
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
load(
|
||||
"@io_bazel_rules_go//go:def.bzl",
|
||||
"go_library",
|
||||
)
|
||||
|
||||
proto_library(
|
||||
name = "api_proto",
|
||||
srcs = ["api.proto"],
|
||||
tags = ["automanaged"],
|
||||
deps = [
|
||||
"@go_googleapis//google/api:annotations_proto",
|
||||
"@gogo_special_proto//github.com/gogo/protobuf/gogoproto",
|
||||
],
|
||||
)
|
||||
|
||||
go_proto_library(
|
||||
name = "api_go_proto",
|
||||
compilers = ["@io_bazel_rules_go//proto:gogofast_grpc"],
|
||||
importpath = "go-common/app/service/main/passport-sns/api",
|
||||
proto = ":api_proto",
|
||||
tags = ["automanaged"],
|
||||
deps = [
|
||||
"@com_github_gogo_protobuf//gogoproto:go_default_library",
|
||||
"@go_googleapis//google/api:annotations_go_proto",
|
||||
],
|
||||
)
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = ["api.bm.go"],
|
||||
embed = [":api_go_proto"],
|
||||
importpath = "go-common/app/service/main/passport-sns/api",
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//library/net/http/blademaster:go_default_library",
|
||||
"//library/net/http/blademaster/binding:go_default_library",
|
||||
"//vendor/google.golang.org/genproto/googleapis/api/annotations:go_default_library",
|
||||
"@com_github_gogo_protobuf//gogoproto:go_default_library",
|
||||
"@com_github_gogo_protobuf//proto:go_default_library",
|
||||
"@org_golang_google_grpc//:go_default_library",
|
||||
"@org_golang_x_net//context:go_default_library",
|
||||
],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [":package-srcs"],
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
133
app/service/main/passport-sns/api/api.bm.go
Normal file
133
app/service/main/passport-sns/api/api.bm.go
Normal file
@ -0,0 +1,133 @@
|
||||
// Code generated by protoc-gen-bm v0.1, DO NOT EDIT.
|
||||
// source: api.proto
|
||||
|
||||
/*
|
||||
Package api is a generated blademaster stub package.
|
||||
This code was generated with go-common/app/tool/bmgen/protoc-gen-bm v0.1.
|
||||
|
||||
It is generated from these files:
|
||||
api.proto
|
||||
*/
|
||||
package api
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
bm "go-common/library/net/http/blademaster"
|
||||
"go-common/library/net/http/blademaster/binding"
|
||||
)
|
||||
|
||||
// to suppressed 'imported but not used warning'
|
||||
var _ *bm.Context
|
||||
var _ context.Context
|
||||
var _ binding.StructValidator
|
||||
|
||||
var PathPassportSNSGetAuthorizeURL = "/x/internal/passport-sns/authorize/url"
|
||||
var PathPassportSNSBind = "/x/internal/passport-sns/bind"
|
||||
var PathPassportSNSUnbind = "/x/internal/passport-sns/unbind"
|
||||
var PathPassportSNSGetInfo = "/x/internal/passport-sns/info"
|
||||
var PathPassportSNSGetInfoByCode = "/x/internal/passport-sns/info/code"
|
||||
var PathPassportSNSUpdateInfo = "/x/internal/passport-sns/info/update"
|
||||
|
||||
// =====================
|
||||
// PassportSNS Interface
|
||||
// =====================
|
||||
|
||||
type PassportSNSBMServer interface {
|
||||
// GetAuthorizeURL get authorize url
|
||||
GetAuthorizeURL(ctx context.Context, req *GetAuthorizeURLReq) (resp *GetAuthorizeURLReply, err error)
|
||||
|
||||
// Bind bind sns account
|
||||
Bind(ctx context.Context, req *BindReq) (resp *EmptyReply, err error)
|
||||
|
||||
// Unbind unbind sns account
|
||||
Unbind(ctx context.Context, req *UnbindReq) (resp *EmptyReply, err error)
|
||||
|
||||
// GetInfo get info by mid
|
||||
GetInfo(ctx context.Context, req *GetInfoReq) (resp *GetInfoReply, err error)
|
||||
|
||||
// GetInfoByCode get info by authorize code
|
||||
GetInfoByCode(ctx context.Context, req *GetInfoByCodeReq) (resp *GetInfoByCodeReply, err error)
|
||||
|
||||
// UpdateInfo update info
|
||||
UpdateInfo(ctx context.Context, req *UpdateInfoReq) (resp *EmptyReply, err error)
|
||||
}
|
||||
|
||||
var PassportSNSSvc PassportSNSBMServer
|
||||
|
||||
func passportSNSGetAuthorizeURL(c *bm.Context) {
|
||||
p := new(GetAuthorizeURLReq)
|
||||
if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
|
||||
return
|
||||
}
|
||||
resp, err := PassportSNSSvc.GetAuthorizeURL(c, p)
|
||||
c.JSON(resp, err)
|
||||
}
|
||||
|
||||
func passportSNSBind(c *bm.Context) {
|
||||
p := new(BindReq)
|
||||
if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
|
||||
return
|
||||
}
|
||||
resp, err := PassportSNSSvc.Bind(c, p)
|
||||
c.JSON(resp, err)
|
||||
}
|
||||
|
||||
func passportSNSUnbind(c *bm.Context) {
|
||||
p := new(UnbindReq)
|
||||
if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
|
||||
return
|
||||
}
|
||||
resp, err := PassportSNSSvc.Unbind(c, p)
|
||||
c.JSON(resp, err)
|
||||
}
|
||||
|
||||
func passportSNSGetInfo(c *bm.Context) {
|
||||
p := new(GetInfoReq)
|
||||
if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
|
||||
return
|
||||
}
|
||||
resp, err := PassportSNSSvc.GetInfo(c, p)
|
||||
c.JSON(resp, err)
|
||||
}
|
||||
|
||||
func passportSNSGetInfoByCode(c *bm.Context) {
|
||||
p := new(GetInfoByCodeReq)
|
||||
if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
|
||||
return
|
||||
}
|
||||
resp, err := PassportSNSSvc.GetInfoByCode(c, p)
|
||||
c.JSON(resp, err)
|
||||
}
|
||||
|
||||
func passportSNSUpdateInfo(c *bm.Context) {
|
||||
p := new(UpdateInfoReq)
|
||||
if err := c.BindWith(p, binding.Default(c.Request.Method, c.Request.Header.Get("Content-Type"))); err != nil {
|
||||
return
|
||||
}
|
||||
resp, err := PassportSNSSvc.UpdateInfo(c, p)
|
||||
c.JSON(resp, err)
|
||||
}
|
||||
|
||||
// RegisterPassportSNSService Register the blademaster route with middleware map
|
||||
// midMap is the middleware map, the key is defined in proto
|
||||
func RegisterPassportSNSService(e *bm.Engine, svc PassportSNSBMServer, midMap map[string]bm.HandlerFunc) {
|
||||
PassportSNSSvc = svc
|
||||
e.GET("/x/internal/passport-sns/authorize/url", passportSNSGetAuthorizeURL)
|
||||
e.POST("/x/internal/passport-sns/bind", passportSNSBind)
|
||||
e.POST("/x/internal/passport-sns/unbind", passportSNSUnbind)
|
||||
e.GET("/x/internal/passport-sns/info", passportSNSGetInfo)
|
||||
e.GET("/x/internal/passport-sns/info/code", passportSNSGetInfoByCode)
|
||||
e.POST("/x/internal/passport-sns/info/update", passportSNSUpdateInfo)
|
||||
}
|
||||
|
||||
// RegisterPassportSNSBMServer Register the blademaster route
|
||||
func RegisterPassportSNSBMServer(e *bm.Engine, server PassportSNSBMServer) {
|
||||
PassportSNSSvc = server
|
||||
e.GET("/x/internal/passport-sns/authorize/url", passportSNSGetAuthorizeURL)
|
||||
e.POST("/x/internal/passport-sns/bind", passportSNSBind)
|
||||
e.POST("/x/internal/passport-sns/unbind", passportSNSUnbind)
|
||||
e.GET("/x/internal/passport-sns/info", passportSNSGetInfo)
|
||||
e.GET("/x/internal/passport-sns/info/code", passportSNSGetInfoByCode)
|
||||
e.POST("/x/internal/passport-sns/info/update", passportSNSUpdateInfo)
|
||||
}
|
174
app/service/main/passport-sns/api/api.passportSNS.md
Normal file
174
app/service/main/passport-sns/api/api.passportSNS.md
Normal file
@ -0,0 +1,174 @@
|
||||
<!-- package=passport.service.sns -->
|
||||
- [/x/internal/passport-sns/authorize/url](#xinternalpassport-snsauthorizeurl) GetAuthorizeURL get authorize url
|
||||
- [/x/internal/passport-sns/bind](#xinternalpassport-snsbind) Bind bind sns account
|
||||
- [/x/internal/passport-sns/unbind](#xinternalpassport-snsunbind) Unbind unbind sns account
|
||||
- [/x/internal/passport-sns/info](#xinternalpassport-snsinfo) GetInfo get info by mid
|
||||
- [/x/internal/passport-sns/info/code](#xinternalpassport-snsinfocode) GetInfoByCode get info by authorize code
|
||||
- [/x/internal/passport-sns/info/update](#xinternalpassport-snsinfoupdate) UpdateInfo update info
|
||||
|
||||
## /x/internal/passport-sns/authorize/url
|
||||
### GetAuthorizeURL get authorize url
|
||||
|
||||
#### 方法:GET
|
||||
|
||||
#### 请求参数
|
||||
|
||||
|参数名|必选|类型|描述|
|
||||
|:---|:---|:---|:---|
|
||||
|app_id|是|string||
|
||||
|platform|是|string||
|
||||
|redirect_url|是|string||
|
||||
|display|否|string||
|
||||
|
||||
#### 响应
|
||||
|
||||
```javascript
|
||||
{
|
||||
"code": 0,
|
||||
"message": "ok",
|
||||
"data": {
|
||||
"url": ""
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## /x/internal/passport-sns/bind
|
||||
### Bind bind sns account
|
||||
|
||||
#### 方法:POST
|
||||
|
||||
#### 请求参数
|
||||
|
||||
|参数名|必选|类型|描述|
|
||||
|:---|:---|:---|:---|
|
||||
|mid|是|integer||
|
||||
|code|是|string||
|
||||
|app_id|是|string||
|
||||
|platform|是|string||
|
||||
|redirect_url|是|string||
|
||||
|
||||
#### 响应
|
||||
|
||||
```javascript
|
||||
{
|
||||
"code": 0,
|
||||
"message": "ok",
|
||||
"data": {
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## /x/internal/passport-sns/unbind
|
||||
### Unbind unbind sns account
|
||||
|
||||
#### 方法:POST
|
||||
|
||||
#### 请求参数
|
||||
|
||||
|参数名|必选|类型|描述|
|
||||
|:---|:---|:---|:---|
|
||||
|mid|是|integer||
|
||||
|app_id|否|string||
|
||||
|platform|是|string||
|
||||
|
||||
#### 响应
|
||||
|
||||
```javascript
|
||||
{
|
||||
"code": 0,
|
||||
"message": "ok",
|
||||
"data": {
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## /x/internal/passport-sns/info
|
||||
### GetInfo get info by mid
|
||||
|
||||
#### 方法:GET
|
||||
|
||||
#### 请求参数
|
||||
|
||||
|参数名|必选|类型|描述|
|
||||
|:---|:---|:---|:---|
|
||||
|mid|是|integer||
|
||||
|
||||
#### 响应
|
||||
|
||||
```javascript
|
||||
{
|
||||
"code": 0,
|
||||
"message": "ok",
|
||||
"data": {
|
||||
"infos": [
|
||||
{
|
||||
"mid": 0,
|
||||
"platform": "",
|
||||
"unionid": "",
|
||||
"expires": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## /x/internal/passport-sns/info/code
|
||||
### GetInfoByCode get info by authorize code
|
||||
|
||||
#### 方法:GET
|
||||
|
||||
#### 请求参数
|
||||
|
||||
|参数名|必选|类型|描述|
|
||||
|:---|:---|:---|:---|
|
||||
|code|是|string||
|
||||
|app_id|是|string||
|
||||
|platform|是|string||
|
||||
|redirect_url|是|string||
|
||||
|
||||
#### 响应
|
||||
|
||||
```javascript
|
||||
{
|
||||
"code": 0,
|
||||
"message": "ok",
|
||||
"data": {
|
||||
"mid": 0,
|
||||
"unionid": "",
|
||||
"openid": "",
|
||||
"expires": 0,
|
||||
"token": ""
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## /x/internal/passport-sns/info/update
|
||||
### UpdateInfo update info
|
||||
|
||||
#### 方法:POST
|
||||
|
||||
#### 请求参数
|
||||
|
||||
|参数名|必选|类型|描述|
|
||||
|:---|:---|:---|:---|
|
||||
|platform|是|string||
|
||||
|app_id|是|string||
|
||||
|mid|是|integer||
|
||||
|open_id|是|string||
|
||||
|
||||
#### 响应
|
||||
|
||||
```javascript
|
||||
{
|
||||
"code": 0,
|
||||
"message": "ok",
|
||||
"data": {
|
||||
}
|
||||
}
|
||||
```
|
||||
|
2818
app/service/main/passport-sns/api/api.pb.go
Normal file
2818
app/service/main/passport-sns/api/api.pb.go
Normal file
File diff suppressed because it is too large
Load Diff
112
app/service/main/passport-sns/api/api.proto
Normal file
112
app/service/main/passport-sns/api/api.proto
Normal file
@ -0,0 +1,112 @@
|
||||
syntax = "proto3";
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "github.com/gogo/protobuf/gogoproto/gogo.proto";
|
||||
|
||||
package passport.service.sns;
|
||||
|
||||
option go_package = "api";
|
||||
|
||||
service PassportSNS {
|
||||
// GetAuthorizeURL get authorize url
|
||||
rpc GetAuthorizeURL (GetAuthorizeURLReq) returns (GetAuthorizeURLReply) {
|
||||
option (google.api.http) = {
|
||||
get: "/x/internal/passport-sns/authorize/url";
|
||||
};
|
||||
}
|
||||
// Bind bind sns account
|
||||
rpc Bind (BindReq) returns (EmptyReply) {
|
||||
option (google.api.http) = {
|
||||
post: "/x/internal/passport-sns/bind";
|
||||
};
|
||||
}
|
||||
// Unbind unbind sns account
|
||||
rpc Unbind (UnbindReq) returns (EmptyReply) {
|
||||
option (google.api.http) = {
|
||||
post: "/x/internal/passport-sns/unbind";
|
||||
};
|
||||
}
|
||||
// GetInfo get info by mid
|
||||
rpc GetInfo (GetInfoReq) returns (GetInfoReply) {
|
||||
option (google.api.http) = {
|
||||
get: "/x/internal/passport-sns/info";
|
||||
};
|
||||
}
|
||||
// GetInfoByCode get info by authorize code
|
||||
rpc GetInfoByCode (GetInfoByCodeReq) returns (GetInfoByCodeReply) {
|
||||
option (google.api.http) = {
|
||||
get: "/x/internal/passport-sns/info/code";
|
||||
};
|
||||
}
|
||||
// UpdateInfo update info
|
||||
rpc UpdateInfo (UpdateInfoReq) returns (EmptyReply) {
|
||||
option (google.api.http) = {
|
||||
post: "/x/internal/passport-sns/info/update";
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
message EmptyReply {
|
||||
}
|
||||
|
||||
message Info {
|
||||
int64 mid = 1 [(gogoproto.jsontag) = "mid"];
|
||||
string platform = 2 [(gogoproto.jsontag) = "platform"];
|
||||
string union_id = 3 [(gogoproto.jsontag) = "unionid"];
|
||||
int64 expires = 4 [(gogoproto.jsontag) = "expires"];
|
||||
}
|
||||
|
||||
message GetAuthorizeURLReq {
|
||||
string app_id = 1 [(gogoproto.moretags) = "form:\"appid\" validate:\"required\""];
|
||||
string platform = 2 [(gogoproto.moretags) = "form:\"platform\" validate:\"required\""];
|
||||
string redirect_url = 3 [(gogoproto.moretags) = "form:\"redirect_url\" validate:\"required\""];
|
||||
string display = 4 [(gogoproto.moretags) = "form:\"display\""];
|
||||
}
|
||||
|
||||
message GetAuthorizeURLReply {
|
||||
string url = 1 [(gogoproto.jsontag) = "url"];
|
||||
}
|
||||
|
||||
message BindReq {
|
||||
int64 mid = 1 [(gogoproto.moretags) = "form:\"mid\" validate:\"required\""];
|
||||
string code = 2 [(gogoproto.moretags) = "form:\"code\" validate:\"required\""];
|
||||
string app_id = 3 [(gogoproto.moretags) = "form:\"appid\" validate:\"required\""];
|
||||
string platform = 4 [(gogoproto.moretags) = "form:\"platform\" validate:\"required\""];
|
||||
string redirect_url = 5 [(gogoproto.moretags) = "form:\"redirect_url\" validate:\"required\""];
|
||||
}
|
||||
|
||||
message UnbindReq {
|
||||
int64 mid = 1 [(gogoproto.moretags) = "form:\"mid\" validate:\"required\""];
|
||||
string app_id = 2 [(gogoproto.moretags) = "form:\"appid\""];
|
||||
string platform = 3 [(gogoproto.moretags) = "form:\"platform\" validate:\"required\""];
|
||||
}
|
||||
|
||||
message GetInfoReq {
|
||||
int64 mid = 1 [(gogoproto.moretags) = "form:\"mid\" validate:\"required\""];
|
||||
}
|
||||
|
||||
message GetInfoReply {
|
||||
repeated Info infos = 1 [(gogoproto.jsontag) = "infos"];
|
||||
}
|
||||
|
||||
message GetInfoByCodeReq {
|
||||
string code = 1 [(gogoproto.moretags) = "form:\"code\" validate:\"required\""];
|
||||
string app_id = 2 [(gogoproto.moretags) = "form:\"appid\" validate:\"required\""];
|
||||
string platform = 3 [(gogoproto.moretags) = "form:\"platform\" validate:\"required\""];
|
||||
string redirect_url = 4 [(gogoproto.moretags) = "form:\"redirect_url\" validate:\"required\""];
|
||||
}
|
||||
|
||||
message GetInfoByCodeReply {
|
||||
int64 mid = 1 [(gogoproto.jsontag) = "mid"];
|
||||
string union_id = 2 [(gogoproto.jsontag) = "unionid"];
|
||||
string open_id = 3 [(gogoproto.jsontag) = "openid"];
|
||||
int64 expires = 4 [(gogoproto.jsontag) = "expires"];
|
||||
string token = 5 [(gogoproto.jsontag) = "token"];
|
||||
}
|
||||
|
||||
message UpdateInfoReq {
|
||||
string platform = 1 [(gogoproto.moretags) = "form:\"platform\" validate:\"required\""];
|
||||
string app_id = 2 [(gogoproto.moretags) = "form:\"appid\" validate:\"required\""];
|
||||
int64 mid = 3 [(gogoproto.moretags) = "form:\"mid\" validate:\"required\""];
|
||||
string open_id = 4 [(gogoproto.moretags) = "form:\"openid\" validate:\"required\""];
|
||||
}
|
Reference in New Issue
Block a user