为REST API创建ODBC包装器/驱动程序

时间:2018-05-14 05:11:27

标签: json rest odbc

在构建方向盘之前检查

我需要一个hackjob来在数据库中呈现api端点。它不需要做任何花哨的事情,只需将其余api吐出的内容转换为json的单列。在根/顶级的每次迭代中的新行将是不错的,但是单个varchar或者其他什么也可以。

ODBC包装器是否存在于任何地方?谷歌搜索只会带来相反的命中(将数据库暴露为api)。我对simba等付费的东西不感兴趣。消费者是SQL服务器,所以我可以使用带有curl的xp_cmdshell作为最后的手段

所以例如:http://jsonapiplayground.reyesoft.com/v2/authors的输出可以像这样的表格(每个作者一行)

|data                                             |
---------------------------------------------------
|{
            "type": "authors",
            "id": "1",
            "attributes": {
                "name": "Madge Mohr DVM 2",
                "date_of_birth": "1977-08-21",
                "date_of_death": "2009-09-14"
            },
            "relationships": {
                "photos": {
                    "data": []
                },
                "books": {
                    "data": [
                        {
                            "type": "books",
                            "id": "41"
                        }
                    ]
                }
            },
            "links": {
                "self": "/v2/authors/1"
            }
        }                                         |
---------------------------------------------------
|{
            "type": "authors",
            "id": "3",
            "attributes": {
                "name": "Zelma Ortiz DDS",
                "date_of_birth": "1992-09-06",
                "date_of_death": "2000-12-19"
            },
            "relationships": {
                "photos": {
                    "data": [
                        {
                            "type": "photos",
                            "id": "3"
                        }
                    ]
                },
                "books": {
                    "data": [
                        {
                            "type": "books",
                            "id": "36"
                        },
                        {
                            "type": "books",
                            "id": "48"
                        }
                    ]
                }
            },
            "links": {
                "self": "/v2/authors/3"
            }
        }|
----------
|{
            "type": "authors",
            "id": "4",
            "attributes": {
                "name": "Fermin Barrows Sr.",
                "date_of_birth": "1991-03-18",
                "date_of_death": "1975-11-07"
            },
            "relationships": {
                "photos": {
                    "data": [
                        {
                            "type": "photos",
                            "id": "4"
                        }
                    ]
                },
                "books": {
                    "data": [
                        {
                            "type": "books",
                            "id": "1"
                        },
                        {
                            "type": "books",
                            "id": "26"
                        },
                        {
                            "type": "books",
                            "id": "44"
                        },
                        {
                            "type": "books",
                            "id": "46"
                        }
                    ]
                }
            },
            "links": {
                "self": "/v2/authors/4"
            }
        }|
----------
|{
            "type": "authors",
            "id": "5",
            "attributes": {
                "name": "Terry Durgan",
                "date_of_birth": "2011-03-06",
                "date_of_death": "2017-04-13"
            },
            "relationships": {
                "photos": {
                    "data": [
                        {
                            "type": "photos",
                            "id": "5"
                        }
                    ]
                },
                "books": {
                    "data": [
                        {
                            "type": "books",
                            "id": "6"
                        },
                        {
                            "type": "books",
                            "id": "16"
                        },
                        {
                            "type": "books",
                            "id": "50"
                        }
                    ]
                }
            },
            "links": {
                "self": "/v2/authors/5"
            }
        }|
----------
|{
            "type": "authors",
            "id": "6",
            "attributes": {
                "name": "Annalise Walsh",
                "date_of_birth": "2004-11-27",
                "date_of_death": "1997-07-20"
            },
            "relationships": {
                "photos": {
                    "data": [
                        {
                            "type": "photos",
                            "id": "6"
                        }
                    ]
                },
                "books": {
                    "data": [
                        {
                            "type": "books",
                            "id": "4"
                        },
                        {
                            "type": "books",
                            "id": "5"
                        },
                        {
                            "type": "books",
                            "id": "21"
                        }
                    ]
                }
            },
            "links": {
                "self": "/v2/authors/6"
            }
        }|
---------

0 个答案:

没有答案