我有以下web api方法:
<GridColumn cell={this.CommandCell} />
...
class DropDownCell extends GridCell {
//...
handleChange(e) {
this.props.onChange({
dataItem: this.props.dataItem,
field: this.props.field,
syntheticEvent: e.syntheticEvent,
value: e.target.value
});
}
//...
render() {
const value = this.props.dataItem[this.props.field];
if (this.props.dataItem.inEdit) {
return (
<td>
<DropDownList
//...
/>
</td>
);
}
我需要将带有特殊字符的字符串传递给web api方法。我从邮递员那里尝试过以下但是没有一个可以工作。具体来说,我需要将URL传递给该方法。我发现它有正斜杠的问题。
(1)这有效:http://localhost:1234/api/MyController/MyMethod/hello
(2)这显然不起作用:http://localhost:1234/api/MyController/MyMethod/https://www.google.com
(3)正常但正斜杠不会出现在方法的输入参数中。只有&#34; http:&#34;。
[HttpGet("{param}")]
public IEnumerable<ResultItem> MyMethod(string param)
(4)不起作用。是的,奇怪的是,在正斜杠之后添加一个字符后根本没有达到该方法。 Fiddler显示HTTP / 1.1 404 Not Found。 http://localhost:1234/api/MyController/MyMethod/http:/a http://localhost:1234/api/MyController/MyMethod/http://a http://localhost:1234/api/MyController/MyMethod/http:%2Fa http://localhost:1234/api/MyController/MyMethod/http:%2F%2Fa
感谢任何建议和见解。谢谢!