คำถามติดแท็ก http

Hypertext Transfer Protocol (HTTP) เป็นโปรโตคอลเครือข่ายระดับแอปพลิเคชันที่ใช้สำหรับการถ่ายโอนเนื้อหาบนเวิลด์ไวด์เว็บ

8
ฉันจะส่งคำขอ POST เป็น JSON ได้อย่างไร
data = { 'ids': [12, 3, 4, 5, 6 , ...] } urllib2.urlopen("http://abc.com/api/posts/create",urllib.urlencode(data)) ฉันต้องการส่งคำขอ POST แต่ช่องใดช่องหนึ่งควรเป็นรายการตัวเลข ฉันจะทำเช่นนั้นได้อย่างไร? (JSON?)
105 python  json  http  url  post 

5
รูปแบบวันที่ที่แนะนำสำหรับ REST GET API
รูปแบบการประทับเวลาที่แนะนำสำหรับ REST GET API เป็นอย่างไร: http://api.example.com/start_date/{timestamp} ฉันคิดว่ารูปแบบวันที่จริงควรเป็นรูปแบบ ISO 8601 เช่นYYYY-MM-DDThh:mm:ssZสำหรับเวลา UTC เราควรใช้ ISO 8601 เวอร์ชันที่ไม่มียัติภังค์และโคลอนเช่น: http://api.example.com/start_date/YYYYMMDDThhmmssZ หรือเราควรเข้ารหัสรูปแบบ ISO 8601 โดยใช้เช่นการเข้ารหัส base64?
105 http  url  rest  date  get 

2
การตั้งค่าสถานะคุกกี้“ ปลอดภัย” ทำงานอย่างไร
ฉันรู้ว่าคุกกี้ที่มีsecureค่าสถานะจะไม่ถูกส่งผ่านการเชื่อมต่อที่ไม่ได้เข้ารหัส ฉันสงสัยว่ามันทำงานในเชิงลึกอย่างไร ใครเป็นผู้รับผิดชอบในการพิจารณาว่าคุกกี้จะถูกส่งหรือไม่?

11
“ รอดำเนินการ” หมายความว่าอย่างไรสำหรับคำขอในหน้าต่างนักพัฒนาซอฟต์แวร์ Chrome
" รอดำเนินการ " หมายถึงอะไรในคอลัมน์สถานะในแท็บ " เครือข่าย " ของหน้าต่างนักพัฒนา Google Chrome สิ่งนี้เกิดขึ้นเมื่อสคริปต์หน้าของฉันออกคำขอ GET ซึ่งการตอบกลับมีส่วนหัวของเนื้อหาสำหรับการดาวน์โหลดไฟล์ CSV: Content-type: text/csv; Content-Disposition: attachment; filename=myfile.csv ใช้งานได้ดีใน FF และ IE7 ดาวน์โหลดไฟล์ CSV ตามที่คาดไว้และเปิดตัวเลือกไฟล์เพื่อบันทึกไฟล์ แต่ Chrome ไม่ทำอะไรเลย ฉันยืนยันว่าเซิร์ฟเวอร์ตอบสนองต่อคำขอดังนั้นดูเหมือนว่า Chrome จะไม่ประมวลผลการตอบกลับ อยากรู้อยากเห็นทุกอย่างทำงานได้ตามที่คาดไว้ถ้าฉันพิมพ์ URL ลงในแถบที่อยู่ของ Chromes แล้วกด FYI: Chrome 10.0.648.204 บน Win-XP

14
HTTP ใช้ UDP หรือไม่
นี่อาจเป็นคำถามโง่ ๆ : HTTP เคยใช้ User Datagram Protocol หรือไม่? ตัวอย่างเช่น: หากสตรีมมิ่ง MP3 หรือวิดีโอโดยใช้ HTTP จะใช้ UDP ในการขนส่งหรือไม่
104 http  tcp  udp 

3
urllib2.HTTPError: HTTP Error 403: Forbidden
ฉันกำลังพยายามดาวน์โหลดข้อมูลหุ้นในอดีตโดยอัตโนมัติโดยใช้ python URL ที่ฉันพยายามเปิดตอบกลับด้วยไฟล์ CSV แต่ฉันไม่สามารถเปิดโดยใช้ urllib2 ฉันได้ลองเปลี่ยนตัวแทนผู้ใช้ตามที่ระบุไว้ในคำถามสองสามข้อก่อนหน้านี้ฉันพยายามที่จะยอมรับคุกกี้ตอบกลับโดยที่โชคไม่ดี คุณสามารถช่วย. หมายเหตุ: วิธีการเดียวกันนี้ใช้ได้กับ yahoo Finance รหัส: import urllib2,cookielib site= "http://www.nseindia.com/live_market/dynaContent/live_watch/get_quote/getHistoricalData.jsp?symbol=JPASSOCIAT&fromDate=1-JAN-2012&toDate=1-AUG-2012&datePeriod=unselected&hiddDwnld=true" hdr = {'User-Agent':'Mozilla/5.0'} req = urllib2.Request(site,headers=hdr) page = urllib2.urlopen(req) ข้อผิดพลาด ไฟล์ "C: \ Python27 \ lib \ urllib2.py" บรรทัด 527 ใน http_error_default เพิ่ม HTTPError (req.get_full_url (), code, msg, hdrs, fp) urllib2.HTTPError: HTTP …
104 python  http  urllib 

9
รับ HTTP Referrer ใน ASP.NET
ฉันกำลังมองหาวิธีที่รวดเร็วง่ายและเชื่อถือได้ในการรับHTTP Referrerของเบราว์เซอร์ในASP.Net ( C # ) ฉันรู้ว่าตัวอ้างอิง HTTP นั้นไม่น่าเชื่อถือ แต่ฉันต้องการวิธีที่เชื่อถือได้ในการรับผู้อ้างอิงหากมีอยู่

5
ส่งแบบฟอร์ม HTML ในหน้าตนเอง
ฉันต้องการส่งแบบฟอร์ม HTML ให้ตัวเอง ฉันจะใช้actionแอตทริบิวต์ได้อย่างไร <form action=""> <form action="#"> <form action="some/address"> <form> แบบไหนดีกว่ากัน?
103 html  forms  http  url 

3
การเข้าสู่ระบบ RESTful ล้มเหลว: ส่งคืน 401 หรือการตอบกลับที่กำหนดเอง
นี่เป็นคำถามเชิงแนวคิด ฉันมีแอปพลิเคชันไคลเอนต์ (มือถือ) ที่ต้องการรองรับการล็อกอินกับบริการเว็บ RESTful เนื่องจากบริการบนเว็บเป็น RESTful จำนวนนี้จะทำให้ลูกค้ายอมรับชื่อผู้ใช้ / รหัสผ่านจากผู้ใช้ยืนยันชื่อผู้ใช้ / รหัสผ่านนั้นกับบริการจากนั้นจำไว้ว่าจะส่งชื่อผู้ใช้ / รหัสผ่านนั้นพร้อมกับคำขอที่ตามมาทั้งหมด การตอบกลับอื่น ๆ ทั้งหมดในบริการเว็บนี้มีให้ในรูปแบบ JSON คำถามคือเมื่อฉันสอบถามบริการเว็บเพียงเพื่อดูว่าชื่อผู้ใช้ / รหัสผ่านที่ระบุนั้นถูกต้องหรือไม่บริการเว็บควรตอบกลับด้วยข้อมูล JSON เสมอเพื่อบอกฉันว่าประสบความสำเร็จหรือไม่สำเร็จหรือควรส่งคืน HTTP 200 ในข้อมูลประจำตัวและ HTTP ที่ดี 401 ในข้อมูลประจำตัวที่ไม่ถูกต้อง เหตุผลที่ฉันถามคือบริการ RESTful อื่น ๆ ใช้ 401 สำหรับข้อมูลรับรองที่ไม่ถูกต้องแม้ว่าคุณจะถามว่าข้อมูลรับรองถูกต้องหรือไม่ อย่างไรก็ตามความเข้าใจของฉันเกี่ยวกับคำตอบ 401 คือว่ามันเป็นตัวแทนของทรัพยากรที่คุณไม่ควรเข้าถึงโดยไม่มีข้อมูลรับรองที่ถูกต้อง แต่ทรัพยากรการเข้าสู่ระบบควรเข้าถึงได้โดยทุกคนเนื่องจากจุดประสงค์ทั้งหมดของทรัพยากรการเข้าสู่ระบบคือการบอกคุณว่าข้อมูลรับรองของคุณถูกต้องหรือไม่ พูดอีกอย่างสำหรับฉันดูเหมือนว่าคำขอเช่น: myservice.com/this/is/a/user/action ควรส่งคืน 401 หากมีการให้ข้อมูลรับรองที่ไม่ถูกต้อง แต่คำขอเช่น: myservice.com/are/these/credentials/valid ไม่ควรส่งคืน 401 …


12
ดำเนินการประมวลผล php ต่อไปหลังจากส่งการตอบกลับ http
สคริปต์ของฉันถูกเรียกโดยเซิร์ฟเวอร์ จากเซิร์ฟเวอร์ฉันจะได้รับและID_OF_MESSAGETEXT_OF_MESSAGE ในสคริปต์ของฉันฉันจะจัดการข้อความขาเข้าและสร้างการตอบสนองด้วย params: ANSWER_TO_IDและRESPONSE_MESSAGE. ปัญหาคือฉันกำลังส่งการตอบกลับไปยัง incomming "ID_OF_MESSAGE"แต่เซิร์ฟเวอร์ที่ส่งข้อความให้ฉันจัดการจะตั้งค่าข้อความของเขาว่าส่งถึงฉัน (หมายความว่าฉันสามารถส่งการตอบกลับไปยัง ID นั้นได้) หลังจากได้รับการตอบกลับ http 200 วิธีแก้ปัญหาอย่างหนึ่งคือบันทึกข้อความลงในฐานข้อมูลและสร้าง cron ซึ่งจะทำงานในแต่ละนาที แต่ฉันต้องสร้างข้อความตอบกลับทันที มีวิธีแก้ปัญหาบางอย่างในการส่งไปยังเซิร์ฟเวอร์ http response 200 และดำเนินการต่อจากสคริปต์ php หรือไม่? ขอบคุณมาก
102 php  http  response 

5
ไลบรารีคำขอ Python เปลี่ยนเส้นทาง URL ใหม่
ฉันได้ดูเอกสารคำขอ Python แต่ไม่เห็นฟังก์ชันการทำงานใด ๆ สำหรับสิ่งที่ฉันพยายามบรรลุ allow_redirects=Trueในสคริปต์ของฉันฉันกำลังตั้งค่า ฉันต้องการทราบว่าหน้านี้ถูกเปลี่ยนเส้นทางไปยังอย่างอื่นหรือไม่ URL ใหม่คืออะไร ตัวอย่างเช่นหาก URL เริ่มต้นคือ: www.google.com/redirect และ URL สุดท้ายคือ www.google.co.uk/redirected ฉันจะรับ URL นั้นได้อย่างไร

3
จะรับเนื้อหาตอบสนองโดยใช้ HttpURLConnection ได้อย่างไรเมื่อส่งคืนรหัสอื่นที่ไม่ใช่ 2xx
ฉันมีปัญหาในการดึงการตอบสนอง Json ในกรณีที่เซิร์ฟเวอร์ส่งคืนข้อผิดพลาด ดูรายละเอียดด้านล่าง ฉันดำเนินการตามคำขออย่างไร ฉันใช้java.net.HttpURLConnection. ฉันตั้งค่าคุณสมบัติการร้องขอจากนั้นฉันทำ: conn = (HttpURLConnection) url.openConnection(); หลังจากนั้นเมื่อคำขอสำเร็จฉันจะได้รับคำตอบ Json: br = new BufferedReader(new InputStreamReader((conn.getInputStream()))); sb = new StringBuilder(); String output; while ((output = br.readLine()) != null) { sb.append(output); } return sb.toString(); ... และปัญหาคือ: ฉันไม่สามารถดึงข้อมูล Json ที่ได้รับเมื่อเซิร์ฟเวอร์ส่งคืนข้อผิดพลาดบางอย่างเช่น 50x หรือ 40x บรรทัดต่อไปนี้พ่น IOException: br = new BufferedReader(new InputStreamReader((conn.getInputStream()))); …

2
Transfer-Encoding: gzip เทียบกับ Content-Encoding: gzip
สถานการณ์ปัจจุบันเป็นอย่างไรเมื่อต้องทำ Transfer-Encoding: gzip หรือก Content-Encoding: gzip เมื่อฉันต้องการที่จะช่วยให้ลูกค้าด้วยเช่นแบนด์วิดธ์ที่ จำกัด ในการส่งสัญญาณของพวกเขาเต็มใจที่จะยอมรับการตอบสนองที่ถูกบีบอัดและเซิร์ฟเวอร์มีสุดท้ายกล่าวหรือไม่ที่จะบีบอัด อย่างหลังคือสิ่งที่เช่น mod_deflate ของ Apache และ IIS ทำถ้าคุณปล่อยให้มันดูแลการบีบอัด Transfer-Encoding: chunkedขึ้นอยู่กับขนาดของเนื้อหาที่ถูกบีบอัดก็จะทำเพิ่มเติม นอกจากนี้ยังรวมถึง a Vary: Accept-Encodingซึ่งบอกใบ้ถึงปัญหาแล้ว Content-Encodingดูเหมือนว่าจะเป็นส่วนหนึ่งของเอนทิตีดังนั้นการเปลี่ยนContent-Encodingจำนวนเงินเป็นการเปลี่ยนแปลงของเอนทิตีกล่าวคือAccept-Encodingส่วนหัวที่แตกต่างกันเช่นแคชไม่สามารถใช้เอนทิตีที่เหมือนกันในเวอร์ชันแคช มีคำตอบที่ชัดเจนเกี่ยวกับสิ่งนี้หรือไม่ที่ฉันพลาดไป (และไม่ได้ฝังอยู่ในข้อความในเธรดยาว ๆ ในกลุ่มข่าว apache บางกลุ่ม) ความประทับใจในปัจจุบันของฉันคือ: ในความเป็นจริงแล้วการโอนการเข้ารหัสเป็นวิธีที่ถูกต้องในการทำสิ่งที่ส่วนใหญ่ทำกับการเข้ารหัสเนื้อหาโดยการใช้เซิร์ฟเวอร์และไคลเอ็นต์ที่มีอยู่ การเข้ารหัสเนื้อหาเนื่องจากผลกระทบทางความหมายทำให้เกิดปัญหาสองสามประการ (เซิร์ฟเวอร์ควรทำอย่างไรETagเมื่อบีบอัดการตอบกลับอย่างโปร่งใส) เหตุผลก็คือ chicken'n'egg: เบราว์เซอร์ไม่รองรับเนื่องจากเซิร์ฟเวอร์ไม่รองรับเนื่องจากเบราว์เซอร์ไม่รองรับ ดังนั้นฉันคิดว่าวิธีที่ถูกต้องน่าจะเป็นTransfer-Encoding: gzip(หรือถ้าฉันรวมร่างเป็นก้อนมากขึ้นมันก็จะกลายเป็น Transfer-Encoding: gzip, chunked ) และไม่มีเหตุผลที่จะแตะต้องVaryหรือETagหรือส่วนหัวอื่นใดในกรณีนั้นเนื่องจากเป็นสิ่งที่มีระดับการขนส่ง สำหรับตอนนี้ฉันไม่สนใจมากเกินไปเกี่ยวกับ 'hop-by-hop'-ness ของTransfer-Encodingสิ่งที่คนอื่นดูเหมือนจะกังวลเป็นอันดับแรกและสำคัญที่สุดเพราะพร็อกซีอาจคลายการบีบอัดและส่งต่อโดยไม่บีบอัดไปยังไคลเอนต์ อย่างไรก็ตามพร็อกซีอาจส่งต่อตามที่เป็นอยู่ (บีบอัด) ได้เช่นกันหากคำขอเดิมมีAccept-Encodingส่วนหัวที่เหมาะสมซึ่งในกรณีของเบราว์เซอร์ทั้งหมดที่ฉันรู้ว่าเป็นที่กำหนด Btw …

6
Chrome แฮงค์หลังจากมีการถ่ายโอนข้อมูลจำนวนหนึ่ง - กำลังรอซ็อกเก็ตที่พร้อมใช้งาน
ฉันมีเกมบนเบราว์เซอร์และฉันเพิ่งเริ่มเพิ่มเสียงในเกม Chrome ไม่โหลดทั้งหน้าและติดขัด"91 requests | 8.1 MB transferred"และไม่โหลดเนื้อหาเพิ่มเติม และมันยังทำลายเว็บไซต์ในแท็บอื่น ๆ ทั้งหมดอีกWaiting for available socketด้วย หลังจาก 5 นาที (แน่นอน) ข้อมูลจะถูกโหลด สิ่งนี้ไม่เกิดขึ้นบนเบราว์เซอร์อื่น ๆ การลบไฟล์ MP3 หนึ่งไฟล์ (ไฟล์ที่เพิ่มล่าสุด) ช่วยแก้ปัญหาได้ดังนั้นอาจเป็นปัญหาการ จำกัด ข้อมูลหรือไม่?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.