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

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

3
จะเข้าถึงข้อมูลส่วนหัว HTTP ในคอนโทรลเลอร์ Spring MVC REST ได้อย่างไร
ฉันใหม่กับการเขียนโปรแกรมเว็บโดยทั่วไปโดยเฉพาะใน Java ดังนั้นฉันเพิ่งเรียนรู้ว่าส่วนหัวและร่างกายคืออะไร ฉันกำลังเขียนบริการ RESTful โดยใช้ Spring MVC ฉันสามารถสร้างบริการที่เรียบง่ายด้วย@RequestMappingในตัวควบคุมของฉัน ฉันต้องการความช่วยเหลือในการทำความเข้าใจวิธีรับข้อมูลส่วนหัว HTTP จากคำขอที่มาถึงวิธีการของฉันในส่วนควบคุมบริการ REST ของฉัน ฉันต้องการแยกวิเคราะห์ส่วนหัวและรับคุณลักษณะบางอย่างจากมัน คุณช่วยอธิบายได้อย่างไรว่าฉันจะไปรับข้อมูลนั้น

6
ฉันต้องการส่วนหัวชนิดเนื้อหาสำหรับคำขอ HTTP GET หรือไม่
เท่าที่ฉันเข้าใจมีสองสถานที่ที่จะตั้งประเภทเนื้อหา: ลูกค้ากำหนดประเภทเนื้อหาสำหรับร่างกายที่เขาส่งไปยังเซิร์ฟเวอร์ (เช่นโพสต์) เซิร์ฟเวอร์ตั้งค่าประเภทเนื้อหาสำหรับการตอบสนอง นี่หมายความว่าฉันไม่จำเป็นต้องหรือไม่ควรกำหนดประเภทเนื้อหาสำหรับคำขอของฉันทั้งหมด (ฝั่งไคลเอ็นต์) และถ้าฉันสามารถหรือควรประเภทเนื้อหาที่จะ? นอกจากนี้ฉันอ่านในโพสต์สองสามฉบับว่าประเภทเนื้อหาของลูกค้าระบุประเภทเนื้อหาที่ลูกค้าต้องการรับ ดังนั้นจุดที่ 1 ของฉันอาจไม่ถูกต้อง?
154 http  get  content-type 

5
การโทรแบบ REST PUT / POST / DELETE ใดที่ควรส่งคืนโดยการประชุม?
ตาม "REST อุดมการณ์" สิ่งที่ควรอยู่ในเนื้อหาการตอบสนองสำหรับคำขอ PUT / POST / DELETE สิ่งที่เกี่ยวกับรหัสส่งคืน? คือHTTP_OKพอ? อะไรคือเหตุผลของการประชุมเช่นนั้นถ้ามี? ฉันพบโพสต์ที่ดีที่อธิบายความแตกต่าง POST / PUT: POST เทียบกับ PUT แต่ก็ยังไม่ตอบคำถามของฉัน
153 rest  http  post  http-delete 

8
ฉันจะเลือกรหัสสถานะ HTTP ใน REST API สำหรับ“ ยังไม่พร้อมลองอีกครั้งในภายหลัง” ได้อย่างไร [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ปรับปรุงคำถามนี้ ฉันกำลังพัฒนา RESTful API ซึ่งhttp://server/thingyapi/thingyblob/1234ส่งคืนไฟล์ (หรือที่รู้จักว่า "blob") ที่เกี่ยวข้องกับ thingy # 1234 เพื่อดาวน์โหลด แต่อาจเป็นได้ว่ามีการร้องขอในเวลาที่ไฟล์ไม่มีอยู่ในเซิร์ฟเวอร์ แต่ส่วนใหญ่จะสามารถใช้งานได้ในภายหลัง มีกระบวนการแบทช์ในเซิร์ฟเวอร์ที่สร้าง blobs ทั้งหมดสำหรับทุกสิ่ง Thingy 1234 มีอยู่แล้วและมีข้อมูลอื่นนอกเหนือจาก blob แล้ว เซิร์ฟเวอร์ยังไม่ได้สร้างสิ่งที่เป็นก้อน 1234 ฉันไม่ต้องการกลับ 404; สำหรับสิ่งที่ไม่มีอยู่จริง นี่คือสิ่งที่มีอยู่ แต่หยดยังไม่ได้ถูกสร้างขึ้น ค่อนข้างชอบวิดีโอ YouTube ที่ "กำลังดำเนินการ" ฉันไม่คิดว่ารหัสการเปลี่ยนเส้นทางจะเหมาะสมเช่นกัน ไม่มี URL "อื่น ๆ " ให้ลอง รหัสสถานะ HTTP ที่ถูกต้องที่จะส่งคืนในกรณีดังกล่าวคืออะไร

15
วิธีง่ายๆในการทดสอบ URL สำหรับ 404 ใน PHP?
ด้านล่างนี้เป็นส่วนหนึ่งของStack Overflow ที่อยู่ : Ошибка 404 вответе cURL ฉันสอนตัวเองเบื้องต้นเกี่ยวกับการคัดลอกและฉันพบว่าบางครั้ง URL ของที่ฉันป้อนเข้าไปในโค้ดของฉันกลับมา 404 ซึ่งรวมรหัสที่เหลือทั้งหมดของฉัน ดังนั้นฉันต้องทดสอบที่ด้านบนของรหัสเพื่อตรวจสอบว่า URL ส่งคืน 404 หรือไม่ ดูเหมือนว่าจะเป็นงานที่ค่อนข้างตรงไปตรงมา แต่ Google ไม่ได้ให้คำตอบใด ๆ แก่ฉัน ฉันกังวลว่าฉันกำลังค้นหาสิ่งผิดปกติ แนะนำให้ใช้หนึ่งบล็อกนี้: $valid = @fsockopen($url, 80, $errno, $errstr, 30); แล้วทดสอบเพื่อดูว่า $ ถูกต้องถ้าว่างเปล่าหรือไม่ แต่ฉันคิดว่า URL ที่ทำให้ฉันมีปัญหามีการเปลี่ยนเส้นทางดังนั้น $ valid จึงจะว่างเปล่าสำหรับค่าทั้งหมด หรือบางทีฉันทำผิดอย่างอื่น ฉันเคยดูด้วย "คำขอหัว" แต่ฉันยังไม่พบตัวอย่างรหัสจริงที่ฉันสามารถเล่นด้วยหรือลอง ข้อเสนอแนะ? แล้วขดตัวนี้คืออะไร?



2
ความแตกต่างระหว่างรหัสการเปลี่ยนเส้นทาง HTTP
ความแตกต่างระหว่างรหัสการเปลี่ยนเส้นทาง HTTP 3XX ต่างๆนั้นไม่ชัดเจนสำหรับฉัน ใช่ฉันอ่านสเป็คแล้ว แต่ดูเหมือนว่ามีความคลาดเคลื่อนระหว่างมาตรฐานและการปฏิบัติจริงที่นี่ 301รหัสการเปลี่ยนเส้นทางดูเหมือนว่าพอที่ชัดเจนซึ่งหมายความว่าทรัพยากรที่ถูกย้ายอย่างถาวร URI อื่นและคำขอในอนาคตควรใช้ว่า URI และ307รหัสการเปลี่ยนเส้นทางก็ชัดเจนเช่นกันนั่นหมายถึงการเปลี่ยนเส้นทางนั้นเป็นการชั่วคราวและคำขอในอนาคตยังควรใช้ URI ดั้งเดิม แต่ฉันไม่สามารถบอกสิ่งที่แตกต่างระหว่าง302และหรือทำไมทั้งของพวกเขาเป็นจริงที่แตกต่างจาก303 301มันดูเหมือนว่า302เดิมทีตั้งใจจะเป็นชั่วคราวเปลี่ยนเส้นทาง (ชอบ307) 303แต่ในทางปฏิบัติมากที่สุดเบราว์เซอร์ได้รับการปฏิบัติเหมือน แต่ความแตกต่างระหว่าง a 303และ a 301คืออะไร? คือ301ควรจะหมายถึงการเปลี่ยนเส้นทางเป็นมากขึ้นอย่างถาวร?

10
อ่าน url to string ในโค้ดจาวาไม่กี่บรรทัด
ฉันพยายามค้นหา Java ที่เทียบเท่ากับ Groovy: String content = "http://www.google.com".toURL().getText(); ฉันต้องการอ่านเนื้อหาจาก URL ไปยังสตริง ฉันไม่ต้องการที่จะทำให้รหัสของฉันสกปรกด้วยกระแสบัฟเฟอร์และลูปสำหรับงานง่ายๆ ฉันดู HttpClient ของ apache แต่ฉันยังไม่เห็นการใช้งานแบบบรรทัดหนึ่งหรือสอง
151 java  http  url 


11
การตั้งค่าสตริงแบบสอบถามโดยใช้การดึงข้อมูลคำขอ GET
ฉันพยายามใช้API การดึงข้อมูลใหม่: ฉันกำลังGETขอสิ่งนี้: var request = new Request({ url: 'http://myapi.com/orders', method: 'GET' }); fetch(request); อย่างไรก็ตามฉันไม่แน่ใจว่าจะเพิ่มสตริงข้อความค้นหาในGETคำขอได้อย่างไร เป็นการดีที่ฉันต้องการที่จะสามารถGETขอให้URLชอบ: 'http://myapi.com/orders?order_id=1' ในjQueryที่ฉันสามารถทำเช่นนี้โดยการส่งผ่าน{order_id: 1}เป็นพารามิเตอร์ของdata $.ajax()มีวิธีที่เทียบเท่ากับการทำเช่นนั้นกับใหม่Fetch APIหรือไม่

6
มีข้อเสียสำหรับการใช้ double slash ชั้นนำเพื่อสืบทอดโปรโตคอลใน URL หรือไม่? ie src =“ // domain.com”
ฉันมีสไตล์ชีทที่โหลดรูปภาพจากโดเมนภายนอกและฉันต้องการให้โหลดจาก https: // จากหน้าคำสั่งซื้อที่ปลอดภัยและ http: // จากหน้าอื่น ๆ โดยอ้างอิงจาก URL ปัจจุบัน ฉันพบว่าการเริ่มต้น URL ด้วยเครื่องหมายสแลชคู่สืบทอดโปรโตคอลปัจจุบัน เบราว์เซอร์ทั้งหมดสนับสนุนเทคนิคนี้หรือไม่? เช่น HTML: <img src="//cdn.domain.com/logo.png" /> css เช่น: .class { background: url(//cdn.domain.com/logo.png); }
148 http  url  https  url-protocol 

4
Cache-Control คืออะไร: ส่วนตัว?
เมื่อฉันเยี่ยมชมchesseng.herokuapp.comฉันได้รับส่วนหัวการตอบสนองที่ดูเหมือน Cache-Control:private Connection:keep-alive Content-Encoding:gzip Content-Type:text/css Date:Tue, 16 Oct 2012 06:37:53 GMT Last-Modified:Tue, 16 Oct 2012 03:13:38 GMT Status:200 OK transfer-encoding:chunked Vary:Accept-Encoding X-Rack-Cache:miss แล้วฉันจะรีเฟรชหน้าและรับ Cache-Control:private Connection:keep-alive Date:Tue, 16 Oct 2012 06:20:49 GMT Status:304 Not Modified X-Rack-Cache:miss ดังนั้นดูเหมือนว่าแคชจะทำงาน ถ้าที่ทำงานสำหรับแคชแล้วสิ่งที่เป็นจุดของหมดอายุและCache-Control: max-age หากต้องการเพิ่มความสับสนเมื่อฉันทดสอบหน้าเว็บที่https://developers.google.com/speed/pagespeed/insights/มันจะบอกฉันถึง

8
พารามิเตอร์แบบสอบถาม HttpClient เชิงมุม 4
ฉันได้รับการมองหาวิธีที่จะผ่านพารามิเตอร์การค้นหาเป็นเรียก API กับใหม่HttpClientModule's HttpClientและยังไม่พบวิธีการแก้ปัญหา ด้วยHttpโมดูลเก่าคุณจะเขียนอะไรแบบนี้ getNamespaceLogs(logNamespace) { // Setup log namespace query parameter let params = new URLSearchParams(); params.set('logNamespace', logNamespace); this._Http.get(`${API_URL}/api/v1/data/logs`, { search: params }) } ซึ่งจะส่งผลให้มีการเรียก API ไปยัง URL ต่อไปนี้: localhost:3001/api/v1/data/logs?logNamespace=somelogsnamespace อย่างไรก็ตามHttpClient get()วิธีการใหม่ไม่มีsearchคุณสมบัติดังนั้นฉันสงสัยว่าจะส่งผ่านพารามิเตอร์การสืบค้นได้อย่างไร

2
วิธีใช้ Python เพื่อเข้าสู่หน้าเว็บและเรียกใช้คุกกี้เพื่อใช้ในภายหลัง
ฉันต้องการดาวน์โหลดและแยกวิเคราะห์เว็บเพจโดยใช้ไพ ธ อน แต่เพื่อเข้าใช้ฉันต้องการชุดคุกกี้สองชุด ดังนั้นฉันต้องลงชื่อเข้าใช้ผ่าน https ไปยังหน้าเว็บก่อน ช่วงเวลาการเข้าสู่ระบบเกี่ยวข้องกับการส่งสอง POST params (ชื่อผู้ใช้รหัสผ่าน) เพื่อ /login.php ในระหว่างคำขอเข้าสู่ระบบฉันต้องการดึงคุกกี้จากส่วนหัวการตอบสนองและเก็บไว้เพื่อให้ฉันสามารถใช้พวกเขาในคำขอเพื่อดาวน์โหลดหน้าเว็บ /data.php ฉันจะทำสิ่งนี้ในไพ ธ อน (ยิ่งกว่า 2.6) ได้อย่างไร ถ้าเป็นไปได้ฉันต้องการใช้โมดูลในตัวเท่านั้น

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