可行的办法倒是有但都要求数據库是你自己的,而且安全去喂狗
浏览器JavaScript不能直接连接数据库,最根本的原因是宿主环境是浏览器而浏览器一般情况下不会提供TCP Socket直接給JavaScript用,太危险了最接近的Websocket是应用层协议,SQL服务器根本不会认有没有办法搞到TCP Socket呢?还真有
- Chrome Apps:算是Chrome Extension的加强版,本来设计是给Chrome OS用的后来開了口子给其他系统用,最近又反悔了从商店下架了所有Apps,但API还是没删掉作为Chrome OS的Native Apps替代品,自然是有完整的TCP Socket可以用的可以了解一下。
- Extension + Native:浏览器不给TCP Socket但是允许Extension跟原生本地程序通信,原生本地程序又可以随便开TCP Socket那就简单了。本地搭一个node服务器其实很快之前学过的话一個小时就能完事(而且写JavaScript的迟早都要学node不是么),比去写Chrome Apps还快毕竟你不用从TCP开始从头开发,npm上一大堆数据库的包可以用
但是以上方式嘟要求你的数据库能从公网直接访问。考虑到目前国内的网络环境题主应该是没有自己的IP的,那数据库就会暴露给一整个网段想想都覺得菊花不保。
补充一下上面题主的评论里提到了JackDB,我觉得很神奇于是注册了一下,然后发现它只不过是个网站的快捷方式……那个網站的工作方式也是第三方转发SQL请求要把密码直接交给网站,真是简单粗暴……