Skip to content

Commit 72b6f62

Browse files
authored
Add CORS to the server (#25)
* Add CORS to the server * update changelog
1 parent 573e6a9 commit 72b6f62

File tree

5 files changed

+38
-2
lines changed

5 files changed

+38
-2
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
55
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

77
## [Unreleased]
8+
### Added
9+
- Cors to the server (#25)
810

911
## [0.2.3] - 2025-09-11
1012
### Changed

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
"@graphile/simplify-inflection": "^8.0.0-beta.8",
2424
"@subql/utils": "^2.14.0",
2525
"@types/yargs": "^17.0.33",
26+
"cors": "^2.8.5",
2627
"dotenv": "^16.4.5",
2728
"eslint": "^8.8.0",
2829
"express": "^4.21.1",
@@ -34,6 +35,7 @@
3435
"@apollo/client": "3.0.0",
3536
"@geut/chan": "^3.2.9",
3637
"@tsconfig/node20": "^20.1.4",
38+
"@types/cors": "^2.8.19",
3739
"@types/express": "^4",
3840
"@types/jest": "^29.5.12",
3941
"@typescript-eslint/eslint-plugin": "^5",

src/server.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
// SPDX-License-Identifier: GPL-3.0
33

44
import { createServer, Server } from 'node:http';
5+
import cors from 'cors';
56
import express from 'express';
67
import { grafserv } from 'grafserv/express/v4';
78
import { postgraphile } from 'postgraphile';
@@ -22,6 +23,8 @@ export function startServer(args: ArgsInterface): Server {
2223
next();
2324
});
2425

26+
app.use(cors());
27+
2528
const server = createServer(app);
2629

2730
server.on('error', (e) => {

test/subgraph.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,14 @@ describe('subgraph plugin test', () => {
186186
await pool.end();
187187
});
188188

189+
it('can make an OPTIONS request', async () => {
190+
const res = await fetch('http://localhost:3001', {
191+
method: 'OPTIONS',
192+
});
193+
194+
expect(res.ok).toBeTruthy();
195+
});
196+
189197
describe('_meta plugin', () => {
190198
it('query _meta', async () => {
191199
await Promise.all([

yarn.lock

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1440,11 +1440,13 @@ __metadata:
14401440
"@graphile/simplify-inflection": ^8.0.0-beta.8
14411441
"@subql/utils": ^2.14.0
14421442
"@tsconfig/node20": ^20.1.4
1443+
"@types/cors": ^2.8.19
14431444
"@types/express": ^4
14441445
"@types/jest": ^29.5.12
14451446
"@types/yargs": ^17.0.33
14461447
"@typescript-eslint/eslint-plugin": ^5
14471448
"@typescript-eslint/parser": 5
1449+
cors: ^2.8.5
14481450
dotenv: ^16.4.5
14491451
eslint: ^8.8.0
14501452
eslint-config-prettier: ^8.3.0
@@ -1641,6 +1643,15 @@ __metadata:
16411643
languageName: node
16421644
linkType: hard
16431645

1646+
"@types/cors@npm:^2.8.19":
1647+
version: 2.8.19
1648+
resolution: "@types/cors@npm:2.8.19"
1649+
dependencies:
1650+
"@types/node": "*"
1651+
checksum: 9545cc532c9218754443f48a0c98c1a9ba4af1fe54a3425c95de75ff3158147bb39e666cb7c6bf98cc56a9c6dc7b4ce5b2cbdae6b55d5942e50c81b76ed6b825
1652+
languageName: node
1653+
linkType: hard
1654+
16441655
"@types/debug@npm:^4.1.7":
16451656
version: 4.1.12
16461657
resolution: "@types/debug@npm:4.1.12"
@@ -2872,6 +2883,16 @@ __metadata:
28722883
languageName: node
28732884
linkType: hard
28742885

2886+
"cors@npm:^2.8.5":
2887+
version: 2.8.5
2888+
resolution: "cors@npm:2.8.5"
2889+
dependencies:
2890+
object-assign: ^4
2891+
vary: ^1
2892+
checksum: ced838404ccd184f61ab4fdc5847035b681c90db7ac17e428f3d81d69e2989d2b680cc254da0e2554f5ed4f8a341820a1ce3d1c16b499f6e2f47a1b9b07b5006
2893+
languageName: node
2894+
linkType: hard
2895+
28752896
"create-jest@npm:^29.7.0":
28762897
version: 29.7.0
28772898
resolution: "create-jest@npm:29.7.0"
@@ -6540,7 +6561,7 @@ __metadata:
65406561
languageName: node
65416562
linkType: hard
65426563

6543-
"object-assign@npm:^4.1.0, object-assign@npm:^4.1.1":
6564+
"object-assign@npm:^4, object-assign@npm:^4.1.0, object-assign@npm:^4.1.1":
65446565
version: 4.1.1
65456566
resolution: "object-assign@npm:4.1.1"
65466567
checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f
@@ -8876,7 +8897,7 @@ __metadata:
88768897
languageName: node
88778898
linkType: hard
88788899

8879-
"vary@npm:~1.1.2":
8900+
"vary@npm:^1, vary@npm:~1.1.2":
88808901
version: 1.1.2
88818902
resolution: "vary@npm:1.1.2"
88828903
checksum: ae0123222c6df65b437669d63dfa8c36cee20a504101b2fcd97b8bf76f91259c17f9f2b4d70a1e3c6bbcee7f51b28392833adb6b2770b23b01abec84e369660b

0 commit comments

Comments
 (0)