我的同事和我不同意REST可以通过FTP实现的声明。我相信由于REST只是一种架构设计,它可以通过任何具有合适接口的协议实现,例如FTP。但是,他不同意并认为目前除了HTTP REST之外不能在任何协议上实现。我向他展示了一些评论和链接,但他并不接受它们。谁是对的?
答案 0 :(得分:7)
REST是一个广泛的概念,没有任何真正严格的定义。它主要用于HTTP(即GET,POST,PUT,DELETE ..方法)的方式可以很容易地与大多数其他协议镜像,前提是您也可以控制服务器端。使用普通的FTP服务器,这可能是不可能的(GET,PUT,DELETE可能会映射到RETR,STOR和DELE,但POST不会)但FTP协议本身可以与自定义服务器一起使用,我实际上已经看到了FTP协议被误用于数据库,例如具有提交和回滚的事务(可怕!)。
因此,如果您控制服务器,您可以在任何协议上实现REST的思想,这样就可以在两个方向上交换数据,例如FTP,普通TCP或UDP,avian carrier,蜗牛邮件和彩虹独角兽。但这并不意味着这些协议真的适合这项任务。