For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
预约演示登录免费开始
  • 使用 SDK
    • SDK 概述
    • SDK 如何工作
    • Quickstart
    • Customer showcase
  • 使用 SDK
    • 项目结构
    • 添加自定义代码
    • Migrating to Replay
    • 功能特性
  • 参考
      • Generating an SDK
      • 发布为 Go 模块
      • Go 配置
      • 添加自定义代码
      • 变更日志
      • Customer showcase
  • 资源
    • generators.yml
Checking status...
SOC2Soc 2 Type II
© 2026 Fern • Birch Solutions, Inc., a Postman company

Documentation

SDKsDocsAsk FernCLI Reference

API Definitions

OpenAPIAsyncAPIOpenRPCgRPC

Resources

BlogSupportPricing

Company

Brand KitPrivacy PolicyTerms of Service
LogoLogo
预约演示登录免费开始
在本页
  • 添加自定义逻辑
  • 添加自定义 SDK 方法
参考Go

添加自定义代码

||以 Markdown 格式查看|
此页面是否有帮助?
在仪表板中编辑
上一个

Go 配置

下一个

Changelog

本页面介绍如何为你的 Go SDK 添加自定义逻辑和方法。

These steps cover adding a new custom file to the SDK. To preserve line-level edits to a generated file, use Replay instead.

添加自定义逻辑

开始添加自定义代码:

1

创建新文件并添加自定义逻辑

helper.go
1func MyHelper() {
2 fmt.Println("Hello World!")
3}
2

将文件添加到 .fernignore

.fernignore
1# Specify files that shouldn't be modified by Fern
2
3helper.go
3

使用辅助函数

Now your users can consume the helper function by importing it from the SDK.

1import "github.com/package/example"
2
3example.MyHelper();

添加自定义 SDK 方法

Fern also allows you to add custom methods to the SDK itself (e.g. client.my_method() ) by inheriting the Fern generated client and then extending it.

1

更新 generators.yml 配置

将你的 Fern 生成的客户端命名为 BaseClient 之类的名称,以反映该客户端将被扩展。

generators.yml
1- name: fernapi/fern-go-sdk
2 version: "..."
3 config:
4 clientName: BaseClient
2

导入并扩展生成的客户端

首先,导入 Fern 生成的基础客户端并对其进行扩展。然后,添加你想要的任何方法。

client/my_client.go
1type MyClient struct {
2 *Client // Embed the Fern generated client.
3}
4
5func NewMyClient(opts ...option.RequestOption) *MyClient {
6 return &MyClient{
7 Client: NewClient(opts...),
8 }
9}
10
11func (m *MyClient) MyHelper() {
12 fmt.Println("Hello World!")
13}
3

更新 .fernignore

将 client/my_client.go 添加到 .fernignore。

.fernignore
1+ client/my_client.go
4

使用方法

你的用户不需要构造生成的客户端,而是构造扩展的客户端。

main.go
1import exampleclient "github.com/package/example/client"
2
3client := exampleclient.NewMyClient():

Now your users can consume the helper function by importing it from the SDK.

1client.MyHelper()