响应文本应该设置在后端还是前端?

问题描述 投票:0回答:4

我正在构建一个使用大量 AJAX 请求来登录、更新信息和添加内容的网站。

我目前正在该项目中使用 CodeIgnitor,想知道是否会成功

"Success, you have updated your profile"

或错误

"There was an error updating your profile!"

应该在 JS 函数中设置一条消息,或者是否应该简单地将其放入 JSON 响应中,但不确定哪个对未来的开发更好。你有什么建议?

该消息将在请求回调页面上的 toast/消息通知中使用。

我最初的想法是在项目中的某个地方有一个基本的键值数组,如下所示:

array(
    100 => "Cannot update profile",
    101 => "Successfully updated profile",
    102 => "Cannot authenticate user",
    103 => "Successfully authenticated!",
    104 => "Unable to load profile data"
)

但我认为随着时间的推移,这可能会变得混乱和缓慢。

php json ajax rest codeigniter
4个回答
2
投票

我想说,这实际上取决于您的应用程序和您正在使用的技术。

在大多数情况下,我会选择 JSON 响应。请记住,在不久的将来您将不得不担心翻译,您可能需要捕获用户注册等的不同异常。

我认为最好处理这个逻辑并在后端有消息。


0
投票

首先,如果您的 Web 应用程序需要更高的安全性,您需要在服务器端验证所有请求,这意味着使用 ajax 发送数据,并使用 CodeIgniter 在服务器端验证所有这些,并返回成功或错误消息例如,带有 HTTP 协议状态代码的服务器端(201:成功,422:无法处理的实体..)以及更多其他状态,您可以找到它,如果您好奇,只需 google 一下即可


0
投票

为什么不从 CodeIgnitor 脚本返回响应变量,然后在前端 AJAX 函数中使用它来显示错误:

success: function(response) {
    if (response == 100) 
        <p> Cannot update profile </p>
    else if (response == 101) 
        <p> Successfully updated profile </p>
    else if (response == 102) 
        <p> Cannot authenticate user </p>
    ...
    ...
    ...
}​

0
投票

最好从后端发送成功或错误消息, 这对

有好处
  • 它可以帮助您将来的翻译功能
  • 修改这些消息很容易。
  • 最终用户可以自定义消息。
  • 看起来很专业(非通用味精)
  • 可以在前端使用较低的代码(AJAX)。
  • 可以帮助您了解后端对客户端的每个响应的作用。
© www.soinside.com 2019 - 2024. All rights reserved.