gpt4 book ai didi

javascript - 将参数发送到 SQL Server 的 Rest API

转载 作者:行者123 更新时间:2023-12-02 22:48:05 25 4
gpt4 key购买 nike

我创建了一个 SQL 服务器,其中包含一个表,该表的数据位于我可以本地访问的服务器上。我还在同一台服务器上创建了一个“API”,以从 SQL 服务器获取信息,以便我的 Angular 应用程序可以读取它。

目前,我可以读取 SQL Server 中的行并将它们显示在我的 Angular 应用程序中,但是,我希望能够从我的 Angular 应用程序(通过 API)更新 SQL 表。

这是我的 API ( sqlserver.js ):

var express = require('express');
var app = express();
var cors = require('cors');

app.use(cors())

app.get('/', function (req, res) {

var sql = require("msnodesqlv8");

// config for your database
var config = "server=servername;Database=dataBaseName;Trusted_Connection=Yes;Driver={SQL Server Native Client 11.0}"
const query = "SELECT * FROM tableName";
// connect to your database

sql.query(config, query, (err, rows) => {
res.send(rows)
});
});


var server = app.listen(3097, function () {
console.log('Server is running..');
});

我希望能够使用查询

const query = "SELECT * from tableName WHERE ID LIKE <inputFromAngular>"

但我不知道如何将参数从 Angular 获取到 sqlserver.js 。 (如果我能做到这一点,那么它将导致使用 SET 更新 SQL 表

在我的 Angular 应用程序中,这就是我调用 sqlserver.js 的方式显示 SQL 表:

import { HttpClient } from '@angular/common/http';

constructor(
private httpService: HttpClient
) { }


this.httpService.get("http://servername:3097").subscribe(response => {
console.log(response)
this.sqlData = response;
})

我尝试过使用this.httpService.post()但我不知道如何获取 API 中的参数?

最佳答案

您需要更改 get 方法以从 ui 端发送参数并在后端获取参数,因此添加一个服务器端方法,例如

app.get('/:id', function (req, res) {

var sql = require("msnodesqlv8");
var id = req.params.id,
// config for your database
var config = "server=servername;Database=dataBaseName;Trusted_Connection=Yes;Driver={SQL Server Native Client 11.0}"
const query = "SELECT * FROM tableName WHERE ID LIKE "+id;
// connect to your database

sql.query(config, query, (err, rows) => {
res.send(rows)
});
});

然后在 Angular 一侧

this.httpService.get("http://servername:3097/"+yourid).subscribe(response => {
console.log(response)
this.sqlData = response;
})

此外,我建议您创建一个像 /yourapiname/:id 而不是 /:id 的根目录,并且 Angular 侧的 url 应为“http://servername:3097/yourapiname ” +yourid,因为您当前的根目录可能会导致冲突。

关于javascript - 将参数发送到 SQL Server 的 Rest API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58299289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com