Avatar ·

Como converter um slice de bytes ([]byte) para io.Reader em Golang?

Olá a todos! Comecei a estudar Go recentemente e me deparei com um problema ao trabalhar com fluxos de dados. Tenho uma função que aceita a interface `io.Reader`, mas estou trabalhando com dados que já estão na memória como um slice de bytes (`[]byte`). \n\nAqui está um exemplo simplificado. Suponha que eu receba dados de uma requisição HTTP ou leia um arquivo, mas por algum motivo já tenho um `[]byte`:\n\n```go\npackage main\n\nimport (\n "fmt"\n "io"\n "log"\n)\n\nfunc processData(r io.Reader) {\n data, err := io.ReadAll(r)\n if err != nil {\n log.Fatal(err)\n }\n fmt.Println("Recebido:", string(data))\n}\n\nfunc main() {\n myBytes := []byte("Hello, World! Isto são dados de teste.")\n // Como passar myBytes para processData?\n // processData(myBytes) // Erro de compilação!\n}\n```