Ruby - 哈希值

时间:2017-07-10 13:22:06

标签: ruby-on-rails ruby

我有以下标题,我正在传递http请求。

s = { 
    'user-principal' => '{"userName":"rootname","password":"rootpassword"}', 
    'Accept' => 'application/json', 
    'Content-Type' => 'application/json' 
}

我不想直接传递用户名和密码。相反,我有UNamePASS变量,分别有加密的用户名和密码。我应该如何在标头散列中传递这些变量?

1 个答案:

答案 0 :(得分:3)

由于user-principal看起来像 JSON字符串,您可以通过将哈希值传递给 JSON.dump 来构建它。这样可以确保UNamePASS中的所有特殊字符都被正确转义:

s = { 
  'user-principal' => JSON.dump(
    'userName' => UName,
    'password' => PASS
  ),
  'Accept' => 'application/json', 
  'Content-Type' => 'application/json' 
}