我与某人讨论过,无法找到合适的解决方案,所以我想知道你们是怎么想的:
我有一个html表单,另一个人叫他' Aron'有一个.net系统。 我的html表单有一个名为description的输入文本字段。 Aron他的.net系统捕获我的描述Post,然后将这些数据更改为XML。
但是如果像&发布后,他将得到一个解析错误。
现在Aron告诉我,我需要发布&数据为&
,而不是原始&。
你们对此有何看法?
答案 0 :(得分:1)
对我而言,这听起来更像是服务器端问题。如果我是你,我会创建一个对象,将其序列化为JSON,将其发送到这个.NET应用程序,让.NET开发人员用它做任何他需要的东西。我根据我的架构和语言发送了正确的数据。
这将更加恰当和合理。想象一下这个案例 - 你不再与Aron合作了,你和Mark一起工作,他将你的POST数据保存为纯文本。他会问你为什么要向我发送HTML编码数据?我不需要这个"。你肯定不会告诉他"只是解码它"并且你绝对不想在每次更换合作伙伴时更改代码。如果您同时使用这两个服务,或同时使用10个服务,该怎么办?
作为服务的消费者,您不应该为如何实施此服务而烦恼。此外,您现在可能知道它是如何实现的,它不应该影响您的代码。
答案 1 :(得分:0)
我认为尊敬的绅士Aron应该使用一个适当的库来解决这个问题以及更多问题,正确使用它应该几乎是自动的。
如果失败了,他可以在转换为XML之前使用isset && $var === 'your_value'
。
可以在客户端完成,在发送之前使用javascript来处理数据......但在我看来这是不好的做法,应由服务器处理。
另一种方法是自己使用PHP中的htmlspecialchars()编码html实体,然后使用CURL将数据发布到他的“.net系统”。