合并两个对象

时间:2019-01-13 21:47:57

标签: javascript node.js

我有一个对象,其数据是这样的

 let TokenToStore = { "googleRefreshToken": refreshToken, "googleAccessToken": accessToken, "google_expires_in": expiryTime}  

现在我想将此对象与会话中的对象( req.session.contextToken

合并。

我最初尝试的是

考虑我的req.session.contextToken已经有了满足聚会令牌的数据。

console.log(req.session.contextToken)
//{googleRefreshToken: '1/k_C4Iub8OzxZQMG_3sXRD5-9kZ8kqMDzhr-RW_0XB4G13kY7M8-FE6gX5r3ko',
//googleAccessToken: 'ya29.GluJuh7q6Ly3br-pzum_d9ue0zxEERN6VA0FJvvaXJyJvXDWGIJm7yDTECe7WzEq33dR8EgyOIJ-Bn5dn23RS4fqrA2IctzXjbZ_n5dVxPo3Z',
//google_expires_in: 1547418864123}

现在要合并,我做了类似的事情(TokenToStore在上面提到的第一个代码段中)

 req.session.contextToken = {...req.session.contextToken, TokenToStore}

希望它会给出以下响应

    {meetupRefreshToken: 'vb8OZQMG_3sXRD5-9kZ8kqMDzhr-RW_0XB4G13kY7M8-FE6gX5r3ko',
      meetupAccessToken: 'ya9.Guh7q6Ly3br-pzum_d9ue0zxEERN6VA0FJvvaXXDWGIJm7yDTECe7WzEq33dR8EgyOIJ-Bn5dn23RS4fqrA2IctzXjbZ_n5dVxPo3Z',
      meetup_expires_in: 1547418864123,
      googleRefreshToken: '1k_C4IuaZQMG_3sXRD5-9kZ8kqMDzhr-RW_0XB4G13kY7M8-FE6gX5r3ko',
      googleAccessToken: 'ya29.GluQBq6Ly3br-pzum_d9ue0zxEERN6VA0FJvvadVxPo3Z',
      google_expires_in: 1547418864123}

但是它给出了以下响应

    {meetupRefreshToken: 'vb8OZQMG_3sXRD5-9kZ8kqMDzhr-RW_0XB4G13kY7M8-FE6gX5r3ko',
          meetupAccessToken: 'ya9.Guh7q6Ly3br-pzum_d9ue0zxEERN6VA0FJvvaXXDWGIJm7yDTECe7WzEq33dR8EgyOIJ-Bn5dn23RS4fqrA2IctzXjbZ_n5dVxPo3Z',
          meetup_expires_in: 1547418864123,
          TokenToStore: {
               googleRefreshToken: '1k_C4IuaZQMG_3sXRD5-9kZ8kqMDzhr-RW_0XB4G13kY7M8-FE6gX5r3ko',
                googleAccessToken: 'ya29.GluQBq6Ly3br-pzum_d9ue0zxEERN6VA0FJvvadVxPo3Z',
                google_expires_in: 1547418864123
                         }
     }

问题:有人可以告诉我如何合并并达到预期效果吗?我期望的那个

1 个答案:

答案 0 :(得分:0)

您需要传播(使用...TokenToStore,因为您是通过req.session.contextToken完成的。使用这个:

req.session.contextToken = {...req.session.contextToken, ...TokenToStore}

它将起作用。