我必须实现返回不同数据类型的相同端点。我不能在URL中使用版本控制,所以只是想知道我如何使用标题内容将请求映射到基于标题值。
例如,我将在标题val1
中发送val2
或decider
。我想拥有像
@RequestMapping(value = "\someUrl")
public firstReturnType someMethod() {
}
@RequestMapping(value = "\someUrl")
public secondReturnType someOtherMethod() {
}
有什么建议吗?
答案 0 :(得分:0)
这是HTTP标头列表:https://en.wikipedia.org/wiki/List_of_HTTP_header_fields
您可以看到,您没有可以根据自己的需求或任何其他自定义需求使用的HTTP标头。
我建议通过添加HTTP动词,GET,POST,DELETE,PUT来区分这两种方法。
或者只是将您的网址更改为:
public class MainActivity extends AppCompatActivity {
private boolean fabClicked = false;
@BindView(R.id.fab_one) FloatingActionButton fabOne;
@BindView(R.id.fab_two) FloatingActionButton fabTwo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
}
@Optional
@OnClick({R.id.fab_one, R.id.fab_two})
public void doSomething(View view) {
switch (view.getId()) {
case R.id.fab_one:
//
break;
case R.id.fab_two:
//
break;
default:
break;
}
}
public boolean getFabMenuClicked() {
return fabMenuClicked;
}
}
或者只使用一种方法并使用if语句来决定返回哪个答案:
@RequestMapping(value = "/someUrl/{id}")