可能原因是go cde格式与Nodejs不一样,在使用Asana API时需要注意参数格式。下面是一个实例,用go cde和Nodejs调用Asana API获取任务:
Go cde:
import ( "fmt" "net/http" "io/ioutil" "bytes" )
func main() { url := "https://app.asana.com/api/1.0/tasks?opt_fields=name" method := "GET"
client := &http.Client {
}
req, err := http.NewRequest(method, url, bytes.NewBuffer([]byte(`{"key":"value"}`)))
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Authorization", "Bearer ")
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
fmt.Println(string(body))
}
Nodejs:
const axios = require('axios');
let url = 'https://app.asana.com/api/1.0/tasks?opt_fields=name';
axios.get(url, {
headers: {
'Authorization': 'Bearer
注意参数格式的区别,尤其是在发起请求时。如果还有问题,可以检查个人访问令牌是否有效,或者去Asana官方文档查看API使用方式。