Compare commits
1 Commits
pkg/sdk/go
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 1369e01ba0 |
@@ -132,7 +132,7 @@ curl -X POST http://localhost:8080/v1/publish \
|
||||
|
||||
真实业务接入、REST/SSE 与 gRPC 联调、本地缓存、灰度、认证和故障恢复测试步骤见 [`docs/sdk-integration-guide.md`](docs/sdk-integration-guide.md)。首次接入建议先按文档使用 REST/SSE 在 DEV/TEST 环境完成完整验收,再切换 gRPC 或开启生产认证策略。
|
||||
|
||||
Go REST/SSE 业务接入推荐使用独立轻量 module `github.com/longpeng/configcenter/pkg/sdk/gohttp`(Go 1.24+,仅标准库依赖):
|
||||
Go REST/SSE 业务接入推荐使用独立轻量 module `git.newai.day/longpeng/configcenter/pkg/sdk/gohttp`(Go 1.24+,仅标准库依赖):
|
||||
|
||||
```go
|
||||
client, err := configsdk.New(configsdk.Options{
|
||||
|
||||
@@ -209,23 +209,29 @@ viewer
|
||||
实际业务优先使用独立的轻量 Go module:
|
||||
|
||||
```text
|
||||
github.com/longpeng/configcenter/pkg/sdk/gohttp
|
||||
git.newai.day/longpeng/configcenter/pkg/sdk/gohttp
|
||||
```
|
||||
|
||||
它只实现 REST/SSE transport,不依赖 `grpc`、`protobuf`、PostgreSQL 或 etcd 客户端,因此不会因为接入配置中心而抬升业务项目的这些依赖版本。当前 module 的最低 Go 版本是 1.24。
|
||||
|
||||
正式发布 SDK tag 后,业务项目应依赖对应版本。尚未发布独立 SDK tag 时,本机联调可以临时使用:
|
||||
业务项目通过内网 Gitea 的正式 module 版本接入。当前目标版本:
|
||||
|
||||
```go
|
||||
require github.com/longpeng/configcenter/pkg/sdk/gohttp v0.0.0
|
||||
|
||||
replace github.com/longpeng/configcenter/pkg/sdk/gohttp => /home/longpeng/workspace/ConfigCenter/pkg/sdk/gohttp
|
||||
require git.newai.day/longpeng/configcenter/pkg/sdk/gohttp v0.1.2
|
||||
```
|
||||
|
||||
该 module 是 ConfigCenter 仓库中的嵌套 module,因此对应 Git tag 必须使用:
|
||||
|
||||
```text
|
||||
pkg/sdk/gohttp/v0.1.2
|
||||
```
|
||||
|
||||
内网私有模块环境需要统一配置 `GOPRIVATE=git.newai.day/*`,使 Go 绕过公共 module proxy 和 checksum database。建议由开发机初始化脚本、DevContainer 或 CI Runner 统一下发,而不是使用 Git URL rewrite。
|
||||
|
||||
代码导入:
|
||||
|
||||
```go
|
||||
import configsdk "github.com/longpeng/configcenter/pkg/sdk/gohttp"
|
||||
import configsdk "git.newai.day/longpeng/configcenter/pkg/sdk/gohttp"
|
||||
```
|
||||
|
||||
然后执行:
|
||||
@@ -234,7 +240,7 @@ import configsdk "github.com/longpeng/configcenter/pkg/sdk/gohttp"
|
||||
go mod tidy
|
||||
```
|
||||
|
||||
`replace` 只用于本地联调。正式 CI/构建环境不应依赖相邻仓库目录,ConfigCenter 后续需要为独立 SDK module 建立可消费的版本/tag。
|
||||
正式 CI/构建环境不依赖相邻仓库目录,也不需要 Git URL rewrite;只需要具备访问 `git.newai.day` 的 Git 凭据和私有 Go module 环境配置。
|
||||
|
||||
---
|
||||
|
||||
@@ -252,7 +258,7 @@ import (
|
||||
"os/signal"
|
||||
"syscall"
|
||||
|
||||
configsdk "github.com/longpeng/configcenter/pkg/sdk/gohttp"
|
||||
configsdk "git.newai.day/longpeng/configcenter/pkg/sdk/gohttp"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
module github.com/longpeng/configcenter/pkg/sdk/gohttp
|
||||
module git.newai.day/longpeng/configcenter/pkg/sdk/gohttp
|
||||
|
||||
go 1.24.0
|
||||
|
||||
Reference in New Issue
Block a user