Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk menangkap ralat 410 daripada panggilan `postToConnection` melalui golang aws sdk?

Bagaimana untuk menangkap ralat 410 daripada panggilan `postToConnection` melalui golang aws sdk?

王林
Lepaskan: 2024-02-06 08:30:08
ke hadapan
1097 orang telah melayarinya

如何通过 golang aws sdk 从 `postToConnection` 调用捕获 410 错误?

Kandungan soalan

Saya menggunakan apigateway websocket dalam AWS untuk mengurus sambungan websocket. Terdapat pemutusan sambungan tetapi ia tidak dicetuskan @disconnect 路由的情况。在这种情况下,postToConnection Panggilan api akan mengembalikan ralat 410.

Saya menggunakan golang sdk github.com/aws/aws-sdk-go-v2/service/apigatewaymanagementapi. API postToConnection mengembalikan PostToConnectionOutput, ralat . Bagaimana untuk mengesan jika ralat adalah ralat 410? github.com/aws/aws-sdk-go-v2/service/apigatewaymanagementapipostToConnection API 返回 PostToConnectionOutput,错误 。如何检测错误是否是410错误?


正确答案


可以检查返回的错误是goneexception

Jawapan betul

Anda boleh menyemak sama ada ralat yang dikembalikan adalah daripada jenis goneexception

Sila rujuk 🎜https://aws.github.io/aws-sdk-go-v2/docs/handling-errors/🎜🎜
import(
      api "github.com/aws/aws-sdk-go-v2/service/apigatewaymanagementapi"
      apitypes "github.com/aws/aws-sdk-go-v2/service/apigatewaymanagementapi/types"
    )
    


    func main() {
        
        svc := api.New(api.Options{
            Region: "your-region",
        })
    
        output, err := svc.PostToConnection(ctx, &api.PostToConnectionInput{
            ConnectionId: aws.String("your-connection-id"),
        })
    
        if err != nil {
            var gne *apitypes.GoneException
            if errors.As(err, &gne) {
                log.Println("error:", gne.Error())
            }
            return
        }
    }
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk menangkap ralat 410 daripada panggilan `postToConnection` melalui golang aws sdk?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan