0

我不确定这些是否是编程问题,但我敢肯定很多像我这样的新程序员一直在问同样的问题。

我创建了一个 web 服务来使用 php 将数据更新到一个 vfp 免费表。我使用 VfpOledb 连接 php 和表。许多客户端使用此 Web 服务将其数据更新到服务器中的多个表中。示例:用户 A 更新目录 X 中的表 t_sales,用户 B 更新目录 Y 中的表 t_sales,用户 C 更新目录 Z 中的表 t_sales。

问题是:

  1. 哪个更好/更快,为什么:为不同的用户创建不同的 php 文件(webservice),或创建一个内部带有 switch case 部分的 php 文件以确定数据源位置?

  2. 哪个更好/更安全,为什么:将数据源位置作为参数从用户发送,或将数据源位置存储在 php 文件中?

非常感谢

4

1 回答 1

1

通过数据源位置,我假设您指的是数据库服务器和表。假设数据库服务器和表是你的,并且你想限制用户可以访问哪些表,你应该在内部确定数据库信息。

Web 服务应该提供一个 API,可以像“/myservice/update?name=x&email=y&key=32453457830957834”一样访问,只有所需的信息位是:

  • 用于插入/更新的数据
  • 搜索/过滤参数
  • 安全令牌或 API 密钥

这使得使用您的 Web 服务变得容易,并且只要您逃避输入,它就可以防止注入攻击。(如果您允许将表定义为参数,则无法对其进行转义,然后您和您的用户将任由用户摆布。)

至于性能,与数据库事务所需的时间相比,对于大多数应用程序来说,决定如何访问数据库的逻辑可以忽略不计。

于 2012-04-05T02:31:37.417 回答