Go-FCM 开源项目使用教程
go-fcmFirebase Cloud Messaging Library for Golang项目地址:https://gitcode.com/gh_mirrors/go/go-fcm
1. 项目的目录结构及介绍
Go-FCM 项目的目录结构如下:
go-fcm/
├── LICENSE
├── README.md
├── client.go
├── client_test.go
├── example/
│ └── main.go
├── go.mod
├── go.sum
├── message.go
├── message_test.go
└── response.go
目录结构介绍
LICENSE
: 项目的许可证文件。README.md
: 项目的说明文档。client.go
: 包含 FCM 客户端的主要逻辑。client_test.go
:client.go
的测试文件。example/
: 包含项目的示例代码。main.go
: 示例代码的入口文件。
go.mod
和go.sum
: Go 模块文件,用于管理项目的依赖。message.go
: 定义了消息结构和相关操作。message_test.go
:message.go
的测试文件。response.go
: 定义了响应结构和相关操作。
2. 项目的启动文件介绍
项目的启动文件位于 example/main.go
。这个文件展示了如何使用 Go-FCM 库发送消息到 Firebase Cloud Messaging (FCM)。
启动文件内容
package main
import (
"fmt"
"log"
fcm "github.com/appleboy/go-fcm"
)
func main() {
// 创建一个新的 FCM 客户端
client, err := fcm.NewClient("YOUR_SERVER_KEY")
if err != nil {
log.Fatalln(err)
}
// 创建一个新的消息
msg := &fcm.Message{
To: "YOUR_DEVICE_TOKEN",
Data: map[string]interface{}{
"title": "Test Title",
"body": "Test Body",
},
}
// 发送消息并获取响应
response, err := client.Send(msg)
if err != nil {
log.Fatalln(err)
}
fmt.Println("Response:", response)
}
启动文件介绍
main
函数是程序的入口点。fcm.NewClient
函数用于创建一个新的 FCM 客户端,需要传入服务器密钥。fcm.Message
结构体定义了要发送的消息内容。client.Send
函数用于发送消息并获取响应。
3. 项目的配置文件介绍
Go-FCM 项目没有显式的配置文件,但需要一个服务器密钥来初始化 FCM 客户端。这个密钥通常由 Firebase 控制台提供。
获取服务器密钥
- 登录 Firebase 控制台。
- 进入项目设置。
- 在“云消息传递”标签下找到“服务器密钥”。
使用服务器密钥
在 example/main.go
中,使用 fcm.NewClient("YOUR_SERVER_KEY")
来初始化客户端,其中 "YOUR_SERVER_KEY"
需要替换为实际的服务器密钥。
client, err := fcm.NewClient("YOUR_SERVER_KEY")
通过这种方式,项目可以与 Firebase Cloud Messaging 进行通信。
go-fcmFirebase Cloud Messaging Library for Golang项目地址:https://gitcode.com/gh_mirrors/go/go-fcm