区域设置属于路径还是作为 URI 上的请求参数?

tes*_*123 4 rest url uri localization web-applications

我已经看到区域设置作为路径变量添加到 URI:

/en-US/blah/
Run Code Online (Sandbox Code Playgroud)

或者

/blah/en-US
Run Code Online (Sandbox Code Playgroud)

我将其视为请求参数:

/blah?lang=en-US
Run Code Online (Sandbox Code Playgroud)

我应该这样做吗?有标准的方法吗?如果不是,每种方法的优点和缺点是什么?

我有点喜欢请求参数方法,因为它不需要您传递每个 URI 的区域设置(除非您使用第二种方法并将区域设置添加到路径的末尾)。还有其他想法吗?

Pau*_*mer 5

我相信“标准方法”是使用HTTP“接受语言”标头。除此之外,如果您认为它应该是一个参数(因为它是系统间调用,或者您可能请求浏览器区域设置之外的语言),那么它只是一个与其他任何参数相同的参数,您应该在类似的时尚。