百度智能云AI 自动内容标签Go请求API

29 min read
package main

import (
	"encoding/base64"
	"encoding/json"
	"fmt"
	"io/ioutil"
	"net/http"
	"net/url"
	"strings"
)

func main() {
	var host = "https://aip.baidubce.com/rpc/2.0/nlp/v1/keyword"
	var accessToken = "鉴权认证机制解析得到的 access_token "
	uri, err := url.Parse(host)
	if err != nil {
		fmt.Println(err)
	}
	query := uri.Query()
	query.Set("access_token", accessToken)
	query.Set("charset", "UTF-8")
	uri.RawQuery = query.Encode()
	
	var params = map[string]string{}
	params["title"] = "今天天气怎么样"
	params["content"] = "今天天气怎么样"
	sendBody, err := json.Marshal(params)
	if err != nil {
		fmt.Println(err)
	}
	sendData := string(sendBody)
	client := &http.Client{}
	request, err := http.NewRequest("POST", uri.String(), strings.NewReader(sendData))
	if err != nil {
		fmt.Println(err)
	}
	request.Header.Set("Content-Type", "application/json")
	response, err := client.Do(request)
	defer response.Body.Close()
	result, err := ioutil.ReadAll(response.Body)
	if err != nil {
		fmt.Println(err)
	}
	fmt.Println(string(result))
}