api/router: avoid unneeded loops and fix path match (#1594)
* api/router: avoid unneeded loops and fix path match * if match found in google api path syntax, not try pcre loop * if path is not ending via $ sign, append it to pcre to avoid matching other strings like /api/account/register can be matched to /api/account * api: add tests and validations Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
		| @@ -6,7 +6,12 @@ service Test { | ||||
| 	rpc Call(Request) returns (Response) { | ||||
|     option (google.api.http) = { post: "/api/v0/test/call/{uuid}"; body:"*"; }; | ||||
| 	}; | ||||
|  | ||||
| 	rpc CallPcre(Request) returns (Response) { | ||||
|     option (google.api.http) = { post: "^/api/v0/test/call/pcre/?$"; body:"*"; }; | ||||
| 	}; | ||||
| 	rpc CallPcreInvalid(Request) returns (Response) { | ||||
|     option (google.api.http) = { post: "^/api/v0/test/call/pcre/invalid/?"; body:"*"; }; | ||||
| 	}; | ||||
| } | ||||
|  | ||||
| message Request { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user