मैं का उपयोग कर रहा हूँ oapi-codegen उत्पन्न करने के लिए अपने सर्वर कोड और गूंज Labstack सर्वर के रूप में.
जब मैं पास के एक Group
उदाहरण के लिए Openapi.RegisterHandlers
के बजाय एक Echo
उदाहरण के लिए, मैं हमेशा एक 400 त्रुटि के साथ {"message":"no matching operation was found"}
के लिए किसी भी अनुरोध है कि समूह में:
swagger, err := Openapi.GetSwagger()
if err != nil {
fmt.Fprintf(os.Stderr, "Error loading swagger spec\n: %s", err)
os.Exit(1)
}
// Use oapi validation middleware to check all requests against the
// OpenAPI schema.
g := e.Group("/api", middleware.OapiRequestValidator(swagger))
Openapi.RegisterHandlers(g, &MyApi{})
यदि अनुरोध भेजें /api/foo
है , जहां foo
एक एपीआई समापन बिंदु में परिभाषित उत्पन्न सर्वर कोड, मैं एक 400 त्रुटि । अगर मैं ऐसा /api/<some undefined api>
मैं भी 400. अगर मैं एक अनुरोध भेजने के लिए /baz
, मैं 404 के रूप में के बाद, उम्मीद नहीं है कि एक निर्धारित मार्ग है । अगर मैं पास नहीं करने के लिए एक उपसर्ग Group()
, मैं एक 400 त्रुटि के लिए हर अनुरोध. मैं एक ही व्यवहार अगर मैं का उपयोग करें RegisterHandlersWithBaseURL()