diff options
author | KagurazakaNyaa <i@kagurazakanyaa.com> | 2021-10-24 02:17:07 +0800 |
---|---|---|
committer | KagurazakaNyaa <i@kagurazakanyaa.com> | 2021-10-24 02:17:07 +0800 |
commit | 8ded9a20f9f045703671a478b0ceb8a579b0c727 (patch) | |
tree | 4d05cb8317089d46d2f69da999da0ce92427c1e8 /api/src/routes/gifs | |
parent | change docker build (diff) | |
download | server-8ded9a20f9f045703671a478b0ceb8a579b0c727.tar.xz |
Proxy support for external network access
Diffstat (limited to 'api/src/routes/gifs')
-rw-r--r-- | api/src/routes/gifs/search.ts | 4 | ||||
-rw-r--r-- | api/src/routes/gifs/trending-gifs.ts | 4 | ||||
-rw-r--r-- | api/src/routes/gifs/trending.ts | 5 |
3 files changed, 13 insertions, 0 deletions
diff --git a/api/src/routes/gifs/search.ts b/api/src/routes/gifs/search.ts index 45b3ddca..9ad7a592 100644 --- a/api/src/routes/gifs/search.ts +++ b/api/src/routes/gifs/search.ts @@ -1,5 +1,6 @@ import { Router, Response, Request } from "express"; import fetch from "node-fetch"; +import ProxyAgent from 'proxy-agent'; import { route } from "@fosscord/api"; import { getGifApiKey, parseGifResult } from "./trending"; @@ -10,8 +11,11 @@ router.get("/", route({}), async (req: Request, res: Response) => { const { q, media_format, locale } = req.query; const apiKey = getGifApiKey(); + + const agent = new ProxyAgent(); const response = await fetch(`https://g.tenor.com/v1/search?q=${q}&media_format=${media_format}&locale=${locale}&key=${apiKey}`, { + agent, method: "get", headers: { "Content-Type": "application/json" } }); diff --git a/api/src/routes/gifs/trending-gifs.ts b/api/src/routes/gifs/trending-gifs.ts index b5f87222..6d97bf7c 100644 --- a/api/src/routes/gifs/trending-gifs.ts +++ b/api/src/routes/gifs/trending-gifs.ts @@ -1,5 +1,6 @@ import { Router, Response, Request } from "express"; import fetch from "node-fetch"; +import ProxyAgent from 'proxy-agent'; import { route } from "@fosscord/api"; import { getGifApiKey, parseGifResult } from "./trending"; @@ -10,8 +11,11 @@ router.get("/", route({}), async (req: Request, res: Response) => { const { media_format, locale } = req.query; const apiKey = getGifApiKey(); + + const agent = new ProxyAgent(); const response = await fetch(`https://g.tenor.com/v1/trending?media_format=${media_format}&locale=${locale}&key=${apiKey}`, { + agent, method: "get", headers: { "Content-Type": "application/json" } }); diff --git a/api/src/routes/gifs/trending.ts b/api/src/routes/gifs/trending.ts index 7ee9337e..c81b4c08 100644 --- a/api/src/routes/gifs/trending.ts +++ b/api/src/routes/gifs/trending.ts @@ -1,5 +1,6 @@ import { Router, Response, Request } from "express"; import fetch from "node-fetch"; +import ProxyAgent from 'proxy-agent'; import { route } from "@fosscord/api"; import { Config } from "@fosscord/util"; import { HTTPError } from "lambert-server"; @@ -33,13 +34,17 @@ router.get("/", route({}), async (req: Request, res: Response) => { const { media_format, locale } = req.query; const apiKey = getGifApiKey(); + + const agent = new ProxyAgent(); const [responseSource, trendGifSource] = await Promise.all([ fetch(`https://g.tenor.com/v1/categories?locale=${locale}&key=${apiKey}`, { + agent, method: "get", headers: { "Content-Type": "application/json" } }), fetch(`https://g.tenor.com/v1/trending?locale=${locale}&key=${apiKey}`, { + agent, method: "get", headers: { "Content-Type": "application/json" } }) |