hello,world

14 阅读1分钟
// publishDraftfunc (this *JuejinClient) publishDraft(req JuejinPublishRequest) error {    jsonData, err := json.Marshal(req)    // 打印请求体    //fmt.Println(string(jsonData))    if err != nil {       return fmt.Errorf("failed to marshal request: %v", err)    }    httpReq, err := http.NewRequest("POST", JuejinPublishURL, bytes.NewBuffer(jsonData))    if err != nil {       return err    }    httpReq.Header.Set("Cookie", this.config.cookie)    httpReq.Header.Set("Content-Type", "application/json")    httpReq.Header.Set("User-Agent", "Mozilla/5.0")    httpReq.Header.Set("Referer", "https://juejin.cn/")    resp, err := http.DefaultClient.Do(httpReq)    if err != nil {       return fmt.Errorf("failed to send request: %v", err)    }    defer resp.Body.Close()    var publishResp JuejinPublishResponse    if err := json.NewDecoder(resp.Body).Decode(&publishResp); err != nil {       return fmt.Errorf("failed to decode response: %v", err)    }    rlog.Debugln("JuejinClient publishDraft", rlog.String("publishResp", fmt.Sprintf("%+v", publishResp)))    if publishResp.ErrNo != 0 {       return fmt.Errorf("juejin API error: %d - %s", publishResp.ErrNo, publishResp.ErrMsg)    }    return nil}