Tôi đang sử dụng CURL C++ api để nhận báo giá từ API tài chính của Yahoo. Các api curl và mã của tôi dường như được làm việc tốt, tuy nhiên tôi nhận được một thông báo chuyển hướng "301" khi tôi nói với CURL để truy cập vào url tôi muốn. Tôi làm cách nào để có được CURL thực hiện theo chuyển hướng 301 và nhận dữ liệu tôi muốn?CURL không theo 301 Chuyển hướng, tôi cần phải làm gì?
Dưới đây là URL Tôi đang sử dụng:
http://download.finance.yahoo.com/d/quotes.csv?e=.csv&s=WSF,WSH&f=b2b3s
Dưới đây là câu trả lời tôi nhận được:
<HEAD><TITLE>Redirect</TITLE></HEAD>
<BODY BGCOLOR="white" FGCOLOR="black">
<FONT FACE="Helvetica,Arial"><B>
"<em>http://download.finance.yahoo.com/d/quotes.csv?e=.csv&s=WSF,WSH,WSM,WSO,WST,WTI,WTM,WTR,WTS,WTU,WTW,WU,WWE,WWW,WX,WXS,WY,WYN,X,XAA,XCJ,XCO,XEC,XEL,XEL-A,XEL-E,XFB,XFD,XFH,XFJ,XFP,XFR,XIN,XJT,XKE,XKK,XKN,XKO,XL,XL-Y,XOM,XRM,XRX,XVF,XVG,Y,YGE,YPF,YSI,YUM,YZC,ZB-A,ZB-B,ZB-C,ZEP,ZF,ZLC,ZMH,ZNH,ZQK,ZTR,ZZ,ZZC&f=b2b3ccd1d2ghjkk2k3l2l3mm2m3m4m5m6m7m8opst7vw</em>".<p></B></FONT>
<!-- default "Redirect" response (301) -->
</BODY>
Dưới đây là tùy chọn init CURL tôi
CURL *eh = curl_easy_init();
curl_easy_setopt(eh, CURLOPT_WRITEFUNCTION, cb);
curl_easy_setopt(eh, CURLOPT_HEADER, 0L);
curl_easy_setopt(eh, CURLOPT_URL, url);
curl_easy_setopt(eh, CURLOPT_PRIVATE, url);
curl_easy_setopt(eh, CURLOPT_VERBOSE, 0L);
curl_multi_add_handle(cm, eh);
tôi didn' t đăng mã của tôi, vì nó là tất cả làm việc, tôi chỉ cần phương pháp chung sau đây thông qua woth 301's với CURL.