| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 | 
							- package endpoint
 
- import (
 
- 	"context"
 
- 	"github.com/go-kit/kit/endpoint"
 
- 	"github.com/longjoy/micro-go-course/section28/comment/service"
 
- 	"log"
 
- )
 
- type CommentsEndpoints struct {
 
- 	CommentsListEndpoint endpoint.Endpoint
 
- 	HealthCheckEndpoint  endpoint.Endpoint
 
- }
 
- // 服务发现请求结构体
 
- type CommentsListRequest struct {
 
- 	Id string
 
- }
 
- // 服务发现响应结构体
 
- type CommentsListResponse struct {
 
- 	Detail service.CommentListVO `json:"detail"`
 
- 	Error  string                `json:"error"`
 
- }
 
- func MakeCommentsListEndpoint(svc service.Service) endpoint.Endpoint {
 
- 	return func(ctx context.Context, request interface{}) (response interface{}, err error) {
 
- 		req := request.(CommentsListRequest)
 
- 		detail, err := svc.GetCommentsList(ctx, req.Id)
 
- 		var errString = ""
 
- 		if err != nil {
 
- 			errString = err.Error()
 
- 		}
 
- 		return &CommentsListResponse{
 
- 			Detail: detail,
 
- 			Error:  errString,
 
- 		}, nil
 
- 	}
 
- }
 
- // HealthRequest 健康检查请求结构
 
- type HealthRequest struct{}
 
- // HealthResponse 健康检查响应结构
 
- type HealthResponse struct {
 
- 	Status string `json:"status"`
 
- }
 
- // MakeHealthCheckEndpoint 创建健康检查Endpoint
 
- func MakeHealthCheckEndpoint(svc service.Service) endpoint.Endpoint {
 
- 	return func(ctx context.Context, request interface{}) (response interface{}, err error) {
 
- 		log.Printf("helthcheck")
 
- 		status := svc.HealthCheck()
 
- 		return HealthResponse{
 
- 			Status: status,
 
- 		}, nil
 
- 	}
 
- }
 
 
  |