首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >web服务调用返回空值?

web服务调用返回空值?
EN

Stack Overflow用户
提问于 2017-12-26 09:32:30
回答 3查看 0关注 0票数 0

我有一个Web服务API。有些调用返回包含用户提供的信息的文本字段的对象。从设计和安全的角度来看,如果没有提供信息,在这些字段中返回NULL有哪些不利因素?总是返回空字符串有明显的好处吗?除了通过不要求客户端代码检查空字符串来简化API之外,还有什么明显的好处吗?

EN

回答 3

Stack Overflow用户

发布于 2017-12-26 16:34:49

这完全取决于你是否将空字符串值视为语义上不同于空字符串的值。

如果空字符串和空字符串都意味着该字段没有数据,那么我认为没有理由不通过检查和返回空字符串来简化客户端的工作。

票数 0
EN

Stack Overflow用户

发布于 2017-12-26 18:05:34

简短回复:不要在web服务中使用NULL。

通常,我建议将空字符串放在空字符串上,除非是零字符。我倾向于只使用NULL作为“未定义”。例如,对于用户输入,如果用户输入字段并键入Nothing,则为空字符串。但是,如果用户只是跳过字段,则可能为NULL。

在定义NULL的意义之前,我倾向于返回空字符串并使用字符串。在处理方面,IsNUllOrempty,因为与任何未来的知识不同,我应该假设空和空是相同的。

但是web服务有一个特殊的转折,那就是在工具上有超过一部分的错误在不同的<element/>,,,<element></element>而元素只是缺失了。足够的混乱,除非我控制整个事情,否则我不相信互操作性是可以接受的。

因此,如果我有一个像NULL这样的概念需要表示,我将创建一个单独的布尔元素来表示存在/不存在。

票数 0
EN

Stack Overflow用户

发布于 2017-12-26 18:42:09

我个人更喜欢返回空字符串而不是空字符串。如果数据库有空值,返回该值的Web服务应该返回空值,而不是空字符串。

尽管如此,我还是遇到了一些问题,像AdobeFlex这样的Web服务客户端实际上无法使用空字符串,如果客户端不能被修改,您可能不得不传递空字符串。

我也没看到任何安全问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100000005

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档