當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript microrouter.get函數代碼示例

本文整理匯總了TypeScript中microrouter.get函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript get函數的具體用法?TypeScript get怎麽用?TypeScript get使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了get函數的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: createApp

function createApp(options: CreateAppOptions) {
  const graphqlOptions = (options && options.graphqlOptions) || { schema };
  const graphiqlOptions = (options && options.graphiqlOptions) || {
    endpointURL: '/graphql',
  };

  const graphqlHandler = microGraphql(graphqlOptions);
  const graphiqlHandler = microGraphiql(graphiqlOptions);

  return micro(
    router(
      get('/graphql', graphqlHandler),
      post('/graphql', graphqlHandler),
      put('/graphql', graphqlHandler),
      patch('/graphql', graphqlHandler),
      del('/graphql', graphqlHandler),
      head('/graphql', graphqlHandler),
      opts('/graphql', graphqlHandler),

      get('/graphiql', graphiqlHandler),
      post('/graphiql', graphiqlHandler),
      put('/graphiql', graphiqlHandler),
      patch('/graphiql', graphiqlHandler),
      del('/graphiql', graphiqlHandler),
      head('/graphiql', graphiqlHandler),
      opts('/graphiql', graphiqlHandler),

      (req, res) => send(res, 404, 'not found'),
    ),
  );
}
開發者ID:chentsulin,項目名稱:apollo-server,代碼行數:31,代碼來源:microApollo.test.ts

示例2: get

 get(
   //@ts-ignore UrlPattern is allowed as a parameter to micro-router methods
   new UrlPattern("/api/user/:username/file/:filetype", usernameRegex),
   async (req: ServerRequest, res: ServerResponse) => {
     if (!validFiletype(req.params.filetype as Modwatch.FileNames)) {
       send(res, 400, "Invalid Filetype");
     }
     try {
       const profile = await getProfile({
         username: decodeURIComponent(req.params.username)
       });
       if (!profile) {
         throw {
           httpStatus: 404,
           message: "Profile Not Found"
         };
       }
       if (profile[req.params.filetype]) {
         send(res, 200, profile[req.params.filetype]);
         return;
       }
       throw {
         httpStatus: 404,
         message: "Filetype Not Found"
       };
     } catch (e) {
       console.log(e);
       send(res, e.httpStatus || 500, e.message || null);
     }
   }
 ),
開發者ID:Modwatch,項目名稱:API,代碼行數:31,代碼來源:user.ts

示例3: get

import { get, ServerRequest, ServerResponse } from "microrouter";
import { send } from "micro";
import UrlPattern from "url-pattern";

import { getUsersCount, getUsersList, searchProfiles } from "../database";
import { usernameRegex } from "../utils";

export const routes = [
  get("/api/users/count", async (req: ServerRequest, res: ServerResponse) => {
    try {
      send(res, 200, await getUsersCount());
    } catch (e) {
      console.log(e);
      send(res, 500);
    }
  }),
  get(
    "/api/users/list(/:limit)",
    async (req: ServerRequest, res: ServerResponse) => {
      if (
        typeof req.params.limit !== "undefined" &&
        !Number.isInteger(+req.params.limit)
      ) {
        send(res, 400, "Invalid Limit");
        return;
      }
      try {
        const users = await getUsersList({
          limit:
            typeof req.params.limit !== "undefined"
              ? +req.params.limit
開發者ID:Modwatch,項目名稱:API,代碼行數:31,代碼來源:users.ts

示例4: get

import { get, ServerRequest, ServerResponse } from "microrouter";

import { send } from "micro";

import { routes as users } from "./routes/users";
import { routes as user } from "./routes/user";
import { routes as upload } from "./routes/upload";
import { routes as auth } from "./routes/auth";
import { routes as oauth } from "./routes/oauth";

export const routes = [
  get("/", (req: ServerRequest, res: ServerResponse) => {
    send(res, 200, "Index!");
  }),
  ...users,
  ...user,
  ...upload,
  ...auth,
  ...oauth
];
開發者ID:Modwatch,項目名稱:API,代碼行數:20,代碼來源:routes.ts

示例5: promisify

} from "../utils";
import { getProfile, deleteProfile } from "../database";

const renderFileAsync = promisify(renderFile);

const clients = [
  "https://modwat.ch",
  "https://modwatch-staging.firebaseapp.com"
].concat(process.env.NODE_ENV !== "production" ? "http://localhost:3000" : []);

export const routes = [
  get("/oauth/authorize", async (req: ServerRequest, res: ServerResponse) => {
    send(
      res,
      200,
      await renderFileAsync(join(__dirname, "..", "oauth.ejs"), {
        params: req.query,
        querystring: serialize(req.query)
      })
    );
  }),
  get("/oauth/verify", async (req: ServerRequest, res: ServerResponse) => {
    try {
      const token = await verifyToken(await getToken(req));
      if (new Date() > new Date(token.exp)) {
        send(res, 401, "Invalid Token");
        return;
      }
      send(res, 200);
    } catch (e) {
      console.log(e);
      send(res, e.httpStatus || 500, e.message || null);
開發者ID:Modwatch,項目名稱:API,代碼行數:32,代碼來源:oauth.ts


注:本文中的microrouter.get函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。