Skip to content

Release v0.5.10

Pre-release
Pre-release

Choose a tag to compare

@jjeffcaii jjeffcaii released this 23 May 15:05
· 78 commits to master since this release
75d8d33

Now you can use Error to deconstruct error. See example below:

package main

import (
	"context"
	"fmt"

	"github.com/rsocket/rsocket-go"
	"github.com/rsocket/rsocket-go/payload"
)

func main() {
	client, _ := rsocket.Connect().Transport("tcp://127.0.0.1:7878").Start(context.Background())
	_, _ = client.RequestResponse(payload.NewString("hello", "world")).
		DoOnError(func(e error) {
			// Deconstruct error here:
			if err, ok := e.(rsocket.Error); ok {
				fmt.Println("error code:", err.ErrorCode())
				fmt.Println("error data:", string(err.ErrorData()))
			}
		}).
		Block(context.Background())
}