Hi
I am trying to read data from azure cosmos db table using azcosmos package. In the previous version it’s working fine which is v0.3.5. I’ve upgraded it to v0.3.6.
Now the queryPager.NextPage(context.Background()) is throwing “no Host in request URL”.
Can someone tell what goes wrong in my code?
Line 37 queryResponse, err := queryPager.NextPage(context.Background()) is throwing error.
package main
import (
"context"
"encoding/json"
"errors"
"fmt"
"log"
"os"
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
"github.com/Azure/azure-sdk-for-go/sdk/data/azcosmos"
)
func GetUser() {
endpoint := os.Getenv("Cosmos_DB_Endpoint")
key := os.Getenv("Cosmos_DB_Key")
cred, err := azcosmos.NewKeyCredential(key)
if err != nil {
log.Fatal("Failed to create a credential: ", err)
}
// Create a CosmosDB client
client, err := azcosmos.NewClientWithKey(endpoint, cred, nil)
if err != nil {
log.Fatal("Failed to create Azure Cosmos DB client: ", err)
}
container, _ := client.NewContainer("DIM", "On-Behalf")
pk := azcosmos.NewPartitionKeyNumber(1)
queryPager := container.NewQueryItemsPager("SELECT c['On-Behalf'] FROM c", pk, nil)
var result []map[string]interface{}
for queryPager.More() {
queryResponse, err := queryPager.NextPage(context.Background())
if err != nil {
var responseErr *azcore.ResponseError
errors.As(err, &responseErr)
panic(err)
}
for _, item := range queryResponse.Items {
var itemResponseBody map[string]interface{}
err = json.Unmarshal(item, &itemResponseBody)
result = append(result, itemResponseBody)
if err != nil {
panic(err)
}
}
}
fmt.Print(result)
}
func main() {
GetUser()
}