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

REST (Representational State Transfer) เป็นรูปแบบของสถาปัตยกรรมซอฟต์แวร์สำหรับระบบไฮเปอร์มีเดียแบบกระจายเช่นเวิลด์ไวด์เว็บ มันได้รับความนิยมเพิ่มขึ้นเมื่อเทียบกับสถาปัตยกรรม RPC เช่น SOAP เนื่องจากการยกเลิกการเชื่อมต่อภายในไคลเอ็นต์จากเซิร์ฟเวอร์ที่มาจากการมีอินเตอร์เฟสที่สม่ำเสมอระหว่างระบบที่แตกต่างกัน

3
Ember.js หรือ Backbone.js สำหรับแบ็กเอนด์พักผ่อน [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันรู้อยู่แล้วว่า ember.js เป็นวิธีที่มีน้ำหนักมากกว่าในทางตรงกันข้ามกับ backbone.js ฉันอ่านบทความมากมายเกี่ยวกับทั้งสองอย่าง ฉันกำลังถามตัวเองว่าเฟรมเวิร์กใดทำงานได้ง่ายกว่าเป็นส่วนหน้าสำหรับแบ็กเอนด์ส่วนที่เหลือของราง สำหรับ backbone.js ฉันเห็นวิธีต่างๆในการเรียกแบ็กเอนด์ส่วนที่เหลือ สำหรับถ่านดูเหมือนว่าฉันจะต้องรวมไลบรารีเพิ่มเติมเช่น 'data' หรือ 'resources' เหตุใดจึงมีห้องสมุดสองแห่งสำหรับสิ่งนี้ แล้วทางเลือกที่ดีกว่าคืออะไร? ไม่มีตัวอย่างมากมายในการเชื่อมต่อส่วนหน้ากับแบ็กเอนด์ด้วย อะไรคือตัวอย่างการทำงานที่ดีสำหรับการพักผ่อนแบ็กเอนด์เรียกสิ่งนี้: URI: ../restapi/topics รับข้อมูลรับรองการตรวจสอบสิทธิ์: admin / รูปแบบที่ถูกต้อง: json

4
GRPC แตกต่างจาก REST อย่างไร?
ฉันกำลังอ่านคำอธิบายของ GRPCและแผนผังนี้เป็นที่สนใจ: เลเยอร์การขนส่งทำงานอย่างไร? ถ้ามันผ่านเครือข่าย ... ทำไมถึงเรียกว่า RPC? ที่สำคัญกว่านั้นสิ่งนี้แตกต่างจาก REST ที่ใช้ API สำหรับชั้นบริการอย่างไร (คลาสในไคลเอนต์ที่มีเมธอดที่สร้างคำขอ http)
98 rest  grpc 

5
อนุญาตคำขอ CORS REST ไปยังแอปพลิเคชัน Express / Node.js บน Heroku
ฉันได้เขียน REST API บนเฟรมเวิร์กด่วนสำหรับ node.js ที่ใช้กับคำขอจากคอนโซล js ใน Chrome และแถบ URL ฯลฯ ตอนนี้ฉันกำลังพยายามทำให้มันทำงานกับคำขอจากแอปอื่น โดเมน (CORS) คำขอแรกที่สร้างขึ้นโดยอัตโนมัติโดยส่วนหน้าของจาวาสคริปต์คือการ / api / search? uri = และดูเหมือนจะล้มเหลวในคำขอ OPTIONS "preflight" ในแอปด่วนของฉันฉันกำลังเพิ่มส่วนหัว CORS โดยใช้: var allowCrossDomain = function(req, res, next) { res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS'); res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization, Content-Length, X-Requested-With'); // intercept OPTIONS method if ('OPTIONS' …
98 node.js  rest  heroku  express  cors 


8
ใช้การบีบอัด GZIP กับ Spring Boot / MVC / JavaConfig พร้อม RESTful
เราใช้ Spring Boot / MVC กับ java-config ที่ใช้คำอธิบายประกอบสำหรับชุดRESTfulบริการต่างๆและเราต้องการเปิดใช้งานการHTTP GZIPบีบอัดสตรีมแบบเลือกในการตอบสนอง API บางรายการ ฉันรู้ว่าฉันสามารถทำสิ่งนี้ได้ด้วยตนเองในคอนโทรลเลอร์และ a byte[] @ResponseBodyอย่างไรก็ตามเราต้องการพึ่งพาโครงสร้างพื้นฐาน SpringMVC (ตัวกรอง / ฯลฯ ) และให้มันทำการแปลงและบีบอัด JSON โดยอัตโนมัติ (เช่นวิธีการส่งคืน POJO) ฉันจะเปิดใช้งานการบีบอัด GZIP ในอินสแตนซ์ ResponseBody หรืออินสแตนซ์ Tomcat แบบฝังได้อย่างไรและเราจะบีบอัดเฉพาะการตอบสนองบางส่วนได้อย่างไร ขอบคุณ! PS: ขณะนี้เราไม่มีการกำหนดค่าตาม XML

3
วิธีการ RESTful API; HEAD & OPTIONS
ฉันกำลังเขียนโมดูล RESTful API สำหรับแอปพลิเคชันใน PHP และฉันผสมกับคำกริยาHEADและOPTIONS. OPTIONS ใช้เพื่อดึงคำกริยา HTTP ที่มีอยู่สำหรับทรัพยากรที่กำหนด? HEAD ใช้เพื่อพิจารณาว่าทรัพยากรที่ระบุพร้อมใช้งานหรือไม่ หากมีใครสามารถชี้แจง * คำกริยาเหล่านี้ได้นั่นจะได้รับการชื่นชมมาก * การชี้แจงเป็นไปตามสถาปัตยกรรม RESTful API ที่ใช้คำกริยา HTTP ซ้ำ ตั้งแต่นั้นมาฉันได้ตระหนักว่าทั้งสองอย่างHEADและไม่OPTIONSควรถูกนำมาใช้ซ้ำและแทนที่จะทำงานอย่างคาดเดาได้ตามที่แอปพลิเคชัน HTTP ควร โอ้เราเติบโตอย่างไรใน 2 ปี
97 php  api  http  rest 

3
ตัวอย่างง่ายๆของ RestSharp [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน5 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันพยายามสร้างเว็บแอปพลิเคชันต้นแบบง่ายๆที่ใช้ RestSharp เพื่อเรียก Rest API ฉันไม่สามารถหาตัวอย่างที่ดีได้เลย ใครช่วยกรุณาแบ่งปันและแนะนำฉันไปยังแหล่งข้อมูลที่ถูกต้องได้โปรด? ฉันได้ดูสิ่งต่อไปนี้แล้วและไม่ได้ให้สิ่งที่ฉันกำลังมองหาเช่นตัวอย่างที่ใช้งานได้อย่างสมบูรณ์: http://restsharp.org/ (ไม่มีแอปพลิเคชันแบบเต็มพร้อมตัวอย่าง) http://www.stum.de/2009/12/22/using-restsharp-to-consume-restful-web-services/ (ดูเหมือนจะเก่า) ขณะสร้างต้นแบบฉันได้รับข้อผิดพลาดด้านล่างสำหรับรหัสด้านล่าง: RestResponse response = client.Execute(request); *Cannot implicitly convert type 'IRestResponse' to 'RestResponse'. An explicit conversion exists (are you missing a cast?) *
97 c#  rest  restsharp 

2
gRPC (HTTP / 2) เร็วกว่า REST ด้วย HTTP / 2 หรือไม่
มีเป้าหมายที่จะแนะนำการขนส่งและโปรโตคอลชั้นโปรแกรมที่ดีในของมันแฝงและเครือข่ายผ่าน ปัจจุบันแอปพลิเคชันใช้RESTกับHTTP / 1.1และเราพบว่ามีเวลาแฝงสูง ฉันต้องการที่จะแก้ไขปัญหาความล่าช้านี้และผมเปิดให้ใช้อย่างใดอย่างgRPC (HTTP / 2)หรือREST / HTTP2 HTTP / 2: มัลติเพล็กซ์ การเชื่อมต่อ TCP เดียว ไบนารีแทนข้อความ การบีบอัดส่วนหัว ดันเซิร์ฟเวอร์ ฉันตระหนักถึงข้อดีทั้งหมดข้างต้น คำถามที่ 1:หากฉันใช้REST กับ HTTP / 2ฉันมั่นใจว่าฉันจะได้รับการปรับปรุงประสิทธิภาพอย่างมีนัยสำคัญเมื่อเทียบกับREST ที่มี HTTP / 1.1แต่จะเปรียบเทียบกับgRPC (HTTP / 2) ได้อย่างไร ฉันทราบด้วยว่า gRPC ใช้โปรโตบัฟเฟอร์ซึ่งเป็นเทคนิคการจัดลำดับไบนารีที่ดีที่สุดสำหรับการส่งข้อมูลที่มีโครงสร้างบนสาย โปรโตบัฟเฟอร์ยังช่วยในการพัฒนาวิธีการไม่เชื่อเรื่องพระเจ้าทางภาษา ฉันเห็นด้วยกับสิ่งนั้นและฉันสามารถใช้คุณสมบัติเดียวกันใน REST โดยใช้ graphQL แต่ข้อกังวลของฉันอยู่ที่การทำให้เป็นอนุกรม: คำถามที่ 2:เมื่อHTTP / 2ใช้คุณสมบัติไบนารีนี้การใช้โปรโตบัฟเฟอร์จะให้ประโยชน์เพิ่มเติมจาก HTTP / …

8
RESTful Services - เทียบเท่า WSDL
ฉันได้อ่านเกี่ยวกับ REST และ SOAP และเข้าใจว่าเหตุใดการใช้ REST จึงมีประโยชน์มากกว่าการใช้โปรโตคอล SOAP อย่างไรก็ตามฉันยังไม่เข้าใจว่าเหตุใดจึงไม่มี "WSDL" เทียบเท่าในโลก REST ฉันเคยเห็นโพสต์ที่บอกว่า "ไม่จำเป็น" สำหรับ WSDL หรือว่ามันจะซ้ำซ้อนในโลก REST แต่ฉันไม่เข้าใจว่าทำไม การเชื่อมโยงทางโปรแกรมกับนิยามและสร้างคลาสพร็อกซีแทนการเข้ารหัสด้วยตนเองเสมอไปหรือไม่? ฉันไม่ได้ตั้งใจจะเข้าสู่การถกเถียงทางปรัชญาเพียงแค่มองหาเหตุผลที่ไม่มี WSDL ใน REST หรือทำไมจึงไม่จำเป็น ขอบคุณ.
96 rest  wsdl 

6
API ที่ดีที่สุด / ครอบคลุมที่สุดสำหรับหุ้น / ข้อมูลทางการเงิน [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา API ฟรี / สาธารณะที่แนะนำมากที่สุดสำหรับการเข้าถึงสถิติตลาดการเงินและราคาหุ้น (ควรเป็นราคาแบบเรียลไทม์) ฉันไม่จู้จี้จุกจิกมากเกินไปเกี่ยวกับวิธีการเปิดเผย (SOAP, REST, การตั้งค่า XML ที่เป็นกรรมสิทธิ์บางอย่าง ฯลฯ ) ตราบใดที่มีเอกสารที่เหมาะสม ฉันกำลังวางแผนที่จะสร้างเว็บแดชบอร์ดแบบธรรมดาใน PHP พร้อมข้อมูลพื้นฐานบางอย่าง (โดยทั่วไปคือหน้าแรกที่รวดเร็วและสกปรก) แต่อาจต้องการขยายเป็นเว็บแอปพลิเคชันเต็มรูปแบบในที่สุด ความคิดใด ๆ ? ตามที่ฉันพบฉันจะโพสต์รายการที่นี่ (อย่าลังเลที่จะแสดงความคิดเห็นหากคุณเคยใช้มาก่อน) ฟรี opentick ( โซปราโน ) // ลิงก์ไม่ทำงาน ไม่ฟรี XigniteRealTime

4
ทางเลือกอื่นที่น่าสนใจในการลบคำขอเนื้อหา
แม้ว่าข้อมูลจำเพาะ HTTP 1.1ดูเหมือนจะอนุญาตเนื้อหาข้อความในคำขอDELETEแต่ดูเหมือนว่าจะระบุว่าเซิร์ฟเวอร์ควรละเว้นเนื่องจากไม่มีความหมายที่กำหนดไว้ 4.3 เนื้อหาข้อความ เซิร์ฟเวอร์ควรอ่านและส่งต่อเนื้อหาข้อความตามคำขอใด ๆ หากวิธีการร้องขอไม่รวมความหมายที่กำหนดไว้สำหรับเอนทิตี - เนื้อความควรละเว้นเนื้อหาข้อความเมื่อจัดการกับคำขอ ฉันได้ตรวจสอบการอภิปรายที่เกี่ยวข้องหลายหัวข้อเกี่ยวกับ SO และอื่น ๆ แล้วเช่น: อนุญาตให้ใช้เนื้อหาเอนทิตีสำหรับคำขอ HTTP DELETE หรือไม่ เพย์โหลดของวิธีการขอ HTTP HTTP รับพร้อมเนื้อหาคำขอ การอภิปรายส่วนใหญ่ดูเหมือนจะเห็นพ้องต้องกันว่าอาจอนุญาตให้มีเนื้อหาข้อความใน DELETE ได้แต่โดยทั่วไปไม่แนะนำ นอกจากนี้ฉันสังเกตเห็นแนวโน้มในไลบรารีไคลเอ็นต์ HTTP ต่างๆซึ่งดูเหมือนว่าจะมีการบันทึกการปรับปรุงมากขึ้นเรื่อย ๆ สำหรับไลบรารีเหล่านี้เพื่อรองรับเนื้อหาคำขอใน DELETE ห้องสมุดส่วนใหญ่ดูเหมือนจะบังคับแม้ว่าบางครั้งจะมีการต่อต้านเล็กน้อย กรณีการใช้งานของฉันเรียกร้องให้เพิ่มข้อมูลเมตาที่จำเป็นบางอย่างใน DELETE (เช่น "เหตุผล" ในการลบพร้อมกับข้อมูลเมตาอื่น ๆ ที่จำเป็นสำหรับการลบ) ฉันได้พิจารณาตัวเลือกต่อไปนี้ซึ่งไม่มีตัวเลือกใดที่เหมาะสมและสอดคล้องกับข้อกำหนด HTTP และ / หรือแนวทางปฏิบัติที่ดีที่สุดของ REST: Message Body - ข้อมูลจำเพาะระบุว่าเนื้อหาของข้อความบน …

5
JAX-RS และ JAX-WS ต่างกันอย่างไร
หลังจากอ่านบทความเกี่ยวกับ JAX-RS และ JAX-WS แล้วฉันมีคำถามสองสามข้อที่ต้องการยืนยัน? JAX-RS สามารถทำ Asynchronous Request เช่น JAX-WS ได้หรือไม่? JAX-RS สามารถเข้าถึงบริการเว็บที่ไม่ได้ทำงานบนแพลตฟอร์ม Java และในทางกลับกันได้หรือไม่? "REST มีประโยชน์อย่างยิ่งสำหรับอุปกรณ์ที่มีโปรไฟล์ จำกัด เช่นพีดีเอและโทรศัพท์มือถือ" หมายความว่าอย่างไร หมายความว่าอย่างไรโดย "JAX-RS ไม่ต้องการข้อความ XML หรือคำจำกัดความของบริการ WSDL - API?

15
ทำการเรียก REST API ใน Swift
ฉันกำลังพยายามใช้ Swift เพื่อโทรไปยัง REST API และพยายามทำตามแบบฝึกหัดมากมาย แต่ไม่สามารถเข้าใจได้ ไม่ว่าจะเป็นเพราะฉันไม่สามารถหาวิธีแปล Obj-C ทั้งหมดเป็น Swift ได้หรือเนื่องจากครึ่งหนึ่งของวิธีการที่ n 'เลิกใช้แล้ว ไม่มีใครรู้วิธีโทรและแยกวิเคราะห์ข้อมูล JSON ที่ส่งคืน
94 ios  swift  rest  api  http 

4
REST API - สร้างหรืออัปเดตจำนวนมากในคำขอเดียว [ปิด]
ปิด . คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เน้นไปที่ปัญหาเดียวโดยแก้ไขโพสต์นี้เท่านั้น ปิดให้บริการ1 ปีที่ผ่านมา ปรับปรุงคำถามนี้ สมมติว่ามีทรัพยากรสองอย่างBinderและDocด้วยความสัมพันธ์ที่เชื่อมโยงกันหมายความว่าDocและBinderยืนอยู่ได้ด้วยตัวเอง Docอาจเป็นหรือไม่เป็นของBinderและBinderอาจว่างเปล่า ถ้าฉันต้องการออกแบบ REST API ที่อนุญาตให้ผู้ใช้ส่งคอลเลกชันของDocs ในคำขอเดียวดังต่อไปนี้: { "docs": [ {"doc_number": 1, "binder": 1}, {"doc_number": 5, "binder": 8}, {"doc_number": 6, "binder": 3} ] } และสำหรับแต่ละ doc ในdocs, หากdocมีอยู่ให้กำหนดให้Binder หากdocไม่มีอยู่ให้สร้างแล้วกำหนด ฉันสับสนจริงๆว่าควรจะนำไปใช้อย่างไร: ใช้วิธี HTTP อะไร ต้องส่งคืนรหัสตอบกลับอะไร นี่เป็นคุณสมบัติสำหรับ REST หรือไม่? URI มีลักษณะอย่างไร /binders/docsเหรอ? การจัดการคำขอจำนวนมากจะเกิดอะไรขึ้นหากบางรายการเกิดข้อผิดพลาด …
94 api  rest  http 

7
ฉันจะดึงโมเดลเดียวใน Backbone ได้อย่างไร
ฉันมีClockโมเดลใน Backbone: var Clock = Backbone.Model.extend({}); /clocks/123ฉันพยายามที่จะได้รับตัวอย่างของการที่มีข้อมูลล่าสุดจาก บางสิ่งที่ฉันได้ลอง: วิธีการระดับ "คลาส" Clock.fetch(123) // TypeError: Object function (){ ... } has no method 'fetch' สร้างอินสแตนซ์แล้วเรียกfetchใช้: c = new Clock({id: 123}) c.fetch() // Error: A 'url' property or function must be specified คอลเลกชัน ฉันพยายามสร้างAllClocksทรัพยากรคอลเลกชัน (แม้ว่าฉันจะไม่ได้ใช้สิ่งนี้ในหน้านี้) var AllClocks = Backbone.Collection.extend({ model: Clock, url: '/clocks/' …

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