fix path parameter conversion not working
This commit is contained in:
parent
c4db0f2d2c
commit
81dd1f8bd5
|
|
@ -328,10 +328,18 @@ public sealed class HttpServer {
|
||||||
var splittedReqPath = reqPath[1..].Split('/');
|
var splittedReqPath = reqPath[1..].Split('/');
|
||||||
for (int i = 0; i < pparams.Count; i++) {
|
for (int i = 0; i < pparams.Count; i++) {
|
||||||
var pparam = pparams[i];
|
var pparam = pparams[i];
|
||||||
|
string paramValue;
|
||||||
if (pparam.IsCatchAll)
|
if (pparam.IsCatchAll)
|
||||||
convertedMParamValues[pparam.ArgPos] = string.Join('/', splittedReqPath[pparam.SegmentStartPos..]);
|
paramValue = string.Join('/', splittedReqPath[pparam.SegmentStartPos..]);
|
||||||
else
|
else
|
||||||
convertedMParamValues[pparam.ArgPos] = splittedReqPath[pparam.SegmentStartPos];
|
paramValue = splittedReqPath[pparam.SegmentStartPos];
|
||||||
|
|
||||||
|
if (stringToTypeParameterConverters[pparam.Type].TryConvertFromString(paramValue, out var res))
|
||||||
|
convertedMParamValues[pparam.ArgPos] = res;
|
||||||
|
else {
|
||||||
|
await HandleDefaultErrorPageAsync(rc, HttpStatusCode.BadRequest);
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user