gpt4 book ai didi

java - 云中个人资料隐私设置的数据结构

转载 作者:行者123 更新时间:2023-12-02 04:11:45 24 4
gpt4 key购买 nike

在社交应用程序(类似于 Facebook)中,用户的个人资料可能如下所示:

{"name": "Peter",
"gender": "Male",
"age": "22"}

现在,当人们导航到 Peter 的页面时,人们将能够看到 Peter 的年龄、性别和姓名。

假设 Peter 是一个非常注重隐私的人,他不想让任何人知道他的任何个人信息。我可以将数据构造为如下所示:

  {"name": "Peter",
"alias":"GoofyDuck",
"gender": "Male",
"age": "22",
"showGender": false,
"showName":false,
"showAge": false}

当其他人导航到他的页面时,由于 json 中设置的 boolean 值,该页面可能会阻止显示他的详细信息,但是,如果您有很多个人详细信息字段(例如,除了姓名之外,性别和年龄(Peter 可以输入他的地址、电话号码等),这可能会使 json 变得不必要的长。

我在想也许二进制字符串上的某种类型的掩码可能更合适:

  {"name": "Peter",
"gender": "Male",
"age": "22",
"privacy":"110"}

在这种情况下,“隐私”字段上的二进制可以表示只有他的年龄会被隐藏,因为它是 0。

我确实认为二进制字符串是在云上存储首选项的最有效方式,但我还没有看到任何使用掩码来掩盖 java 中二进制含义的示例。

我还可以解析二进制字符串以分别获取每个值,但认为这效率不高。有没有办法可以分别屏蔽每个值?

最佳答案

我认为更好的设计是将每个属性与其自己的隐私设置结合起来,如下所示:

{ {"name": "Peter", "show": false},
{"alias":"GoofyDuck", "show": false},
{"gender": "Male", "show": false},
{"age": "22", "show": false} }

这种设计有几个优点:

  1. 比使用蒙版更清晰,其中设置取决于蒙版中的位置
  2. 您可以添加新属性,而不必担心影响现有属性的隐私设置
  3. 通过这种设计,您可以对隐私设置进行更多微调,而不仅仅是 boolean 值:

    { {"name": "Peter", "show": "all"},
    {"alias":"GoofyDuck", "show": "all"},
    {"gender": "男", "show": " friend "},
    {"age": "22", "show": "none"} }

  4. 一旦您有了每个属性的结构,您就可以在需要时使用更多元数据对其进行增强,例如,

    { {"name": "Peter", "show": "all", "decorate": "bold"},
    {"alias":"GoofyDuck", "show": "all"},
    {"gender": "男", "show": " friend "},
    {"age": "22", "show": "none"} }

关于java - 云中个人资料隐私设置的数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33721113/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com