为什么我们不能在休息服务中使用GET代替POST方法,忽略POST的确切做法(创建新的数据/记录)。
答案 0 :(得分:0)
你的面试官可能会找到不同的答案,我提出了两个答案:
这是一个使用POST创建,PUT修改,GET获取和DELETE删除的约定。我们应该遵循惯例。
浏览器支持GET而非POST,所以如果它是由浏览器调用的服务 - 你不能使用POST(它不完全准确,因为浏览器使用支持POST的javascript - 但你得到了要点它)。
也就是说,你的应用程序可能不遵循惯例并使用POST来获取信息和GET来创建一个新的实体等等。这是违反良好做法的,但它可以这样做,所以问“为什么我们不能使用POST”是错误的,因为我们可以使用它,如果那是我们想做的......
顺便说一下,反过来不是对称的:GET受length of the URL的限制,所以虽然POST可能会发送一个巨大的有效载荷,但GET可能无法发送相同数量的数据!