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

时间:2017-10-01 10:49:41

标签: php json ajax rest codeigniter

我正在构建一个使用大量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"
)

但是,随着时间的推移,这可能会让人感到困惑和迟钝。

3 个答案:

答案 0 :(得分:1)

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

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

我认为最好处理这种逻辑并在后端发送消息。

答案 1 :(得分:0)

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

答案 2 :(得分: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>
    ...
    ...
    ...
}​