前端开发过程中遇到过啥困难?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端开发过程中遇到过啥困难?相关的知识,希望对你有一定的参考价值。

面试前端开发工程师,对方问:“开发中遇到过什么困难,如何解决的?”这个问题应该怎么回答?希望大神给个范文。不要给什么问题分析、思路之类的,就是要一个可以背下来的范文。开发中主要会用到Vue、vue-cli、webpack、nodejs、element-ui、axios、token、git。跪求答案,灰常感谢!

前端开发过程中遇到的困难还是很多
1、面试中前端开发过程中遇到的困难这个问题主要是相看面试者是不是有独立解决问题的能力及解决问题的方案以及工作中的的一些两点
2、遇到这样的问题可以说出一个自己解决的比较完美的问题,如:vue不适合做cms,因为单页面应用对seo很不友好,解决的方法就是:我们使用nuxt技术,在保证使用vue语法开发的同时,也使用了服务端渲染技术保证了seo效果,这个过程突出了自己的学习nuxt等新技术的能力
3、另外也是有很多实际的开发问题不好解决,的但是那些自己解决不好的问题不适合 在面试的过程中说的
参考技术A 可以说说样式上的困难和一些难的布局方式 参考技术B 一个可以背下来的范文,现在的面试都这么搞笑的吗?这个明显是想看看你有没有做过什么项目的。你真以为HR看不出来吗?

在 JWT 身份验证过程中需要帮助

【中文标题】在 JWT 身份验证过程中需要帮助【英文标题】:Need assistance with the JWT authenticate process 【发布时间】:2020-07-25 10:07:57 【问题描述】:

我正在开发一个用户登录项目。我的前端是 React,我的服务器端是 Node/Express js。我正在尝试了解 JWT 以创建受保护的路由。但是,在将我的令牌(已经成功生成)发送回我的前端应用程序时,我遇到了困难。我正在尝试将令牌存储在 cookie 中,然后将其发送回我的反应端。我的理解是,在我可以访问服务器端的受保护路由之前,我必须将令牌存储在反应端,但我不知道如何继续完成此操作。这是我在服务器上的登录发布请求的代码:

app.post('/userLogin', function(req, res) 
    var usernameLogin, passwordLogin = req.query;
    console.log(req.query);
    var validateLogin = `SELECT CustomerID FROM CUSTOMER WHERE Username='$usernameLogin' AND Password='$passwordLogin'`;
    mysqlConnection.query(validateLogin, (error, result) => 
        if(error) 
            console.log(error);
         else 
            // Checks to see if the result object (CustomerID) exists or not.
           if(Object.entries(result).length === 0) 
               console.log('sorry');
            else 
               console.log(result);
               console.log('existing');

               const token = jwt.sign( usernameLogin: usernameLogin, 'loginKey');
               res.cookie('token', token,  httpOnly: true).sendStatus(200);
               console.log(token);
           
         
    );
);

这是我在我的反应应用程序中的反应 onSubmit(称为登录)。顺便说一句,“成功”消息已成功打印到控制台,但此时我不知道如何在客户端检索和存储令牌以供将来用于访问受保护的路由:

login = (event) => 
    event.preventDefault();
    console.log(this.state);
    fetch('http://localhost:3001/userLogin?usernameLogin=' + this.state.usernameLogin +
          '&passwordLogin=' + this.state.passwordLogin, method: 'POST'
    )
    .then(res => 
      if (res.status === 200) 
        console.log("it worked!!!");

       else 
        console.log('there was a problem at line 27');
      
    )
  ;

任何见解将不胜感激!!!

【问题讨论】:

【参考方案1】:

对于客户端,您可以使用 localStorage 属性存储从服务器端返回的令牌。

设置项目示例:localStorage.setItem("token", <token>);

获取项目的示例:let token = localStorage.getItem("token");

文档:https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API/Local_storage

PS:让我知道是否足以解决您的问题。

【讨论】:

感谢您的帮助!如果我能够接受两个答案,我也会接受你的!您使用本地存储的想法比 cookie 好得多,并且您提供的文档非常有用(我似乎很难找到好的文档)。再次感谢! 没问题,很高兴为您提供帮助。

以上是关于前端开发过程中遇到过啥困难?的主要内容,如果未能解决你的问题,请参考以下文章

常用的前端开发工具?开发过啥应用或组件?

代码开发测试及发布

在 JWT 身份验证过程中需要帮助

源始 web开发过程中遇到的一些兼容问题

编程开发中最大的困难是什么?

前端开发中经常遇到的一些英语单词