Описание тега compojure-api

Наполните Compojure начинкой для приготовления сладких веб-API.
1 ответ

В Compojure-api, как я могу применить проверку схемы к параметрам формы определенного маршрута?

Из документов compojure-api... Дано (s/defschema Pizza {:name s/Str :size (s/enum :L :M :S) :origin {:country (s/enum :FI :PO) :city s/Str}}) Позже вы можете в своем коде сделать что-то вроде: (defapi app ... ... (POST* "/pizza" [] :return Pizza :bo…
1 ответ

Я не могу получить compojure-api для правильной проверки неверных данных для параметра запроса с помощью схемы Inst

Здесь я использую metosin/compojure-api библиотека, чтобы настроить GET /fetch Конечная точка для моего API. Вы увидите, что я также использую plumatic/schema проверить входные данные параметра запроса на этой конечной точке и siilisolutions/humaniz…
26 апр '18 в 10:48
1 ответ

Compojure: Как получить параметры запроса в виде карты

Я только что создал свой сервис RESTful через Luminus, используя этот документ: http://www.luminusweb.net/docs/services.md Очевидно, Compojure-API использует библиотеку схемы для сопоставления параметров запроса. Однако я хотел бы иметь возможность …
07 май '16 в 23:50
1 ответ

ring.middleware.format_params.cjl создает некорректный JSON

Я использую шаблон luminus с настройкой кольца / композиции / чванства. Когда я кормлю REST API, я создал искаженный JSON, я получаю 500 и: java.lang.IllegalArgumentException: No value supplied for key: {:formats (:json-kw :yaml-kw :edn :transit-jso…
24 авг '15 в 13:19
1 ответ

Не удается выполнить промежуточное ПО, если используется обработчик исключений?

wrap-cors не возвращает заголовки контроля доступа, когда есть неверный запрос к моей конечной точке API. Я считаю, что это потому, что я использую обработчик исключений, который может блокировать запуск промежуточного программного обеспечения. Я х…
02 ноя '18 в 12:23
1 ответ

Compojure-api: запрос приведения для карты, предоставленной через multipart-params

Я пытаюсь интегрировать compojure-api (версия 1.1.12) в существующее приложение, основанное на compojure. Хотя большинство вещей работает, у меня возникла проблема с приведениями запросов к существующему вызову REST, использование которого было бы т…
29 июн '18 в 15:45
1 ответ

Compojure-Api возвращает вектор объектов схемы

Я начал изучать фреймворк Luminus, чтобы войти в Clojure(скрипт) для веб-приложений. Для сервисов RESTful Framework предлагает использовать swagger / compojure-api. Примеры были полезны, но я не могу найти ни одного для возврата коллекций. Вот моя м…
04 окт '16 в 08:20
1 ответ

Compojure-api удаляет body-param после первой группы маршрутов API

В настоящее время я использую шаблон Luminus с опцией +swagger, которая добавляет поддержку compojure-api. Моя текущая настройка выглядит так (только соответствующие биты): (ns my-project.routes.services (:require [compojure.api.sweet :refer :all] ,…
26 окт '16 в 09:18
1 ответ

Необязательные аргументы в compojure-api/schema/swagger?

Когда у меня есть определение API, как это: (POST* "/register" [] :body-params [username :- String, password :- String, name :- String] (ok))) Как правильно сделать имя необязательным? Это: (POST* "/register" [] :body-params [username :- String, pas…
3 ответа

Как связать динамическую переменную?

Как связать динамическую переменную в compojure? Пожалуйста, смотрите мой пример ниже, здесь request-id - это уникальный uuid, который генерируется для каждого запроса API. Я хотел бы иметь возможность доступа к этому идентификатору запроса в послед…
02 янв '18 в 16:24
1 ответ

Ошибка соединения Carmine во время испытаний

У меня есть проект luminus с несколькими простыми маршрутами compojure-api. я добавил carmine для связи с сервером Redis, используя wcar* макрос (определенный в services.clj) для вызова к нему, и все работает нормально. Сейчас я пытаюсь добавить нек…
14 авг '16 в 08:45
1 ответ

compojure-api spec приведение на тело ответа

Я пытаюсь выяснить, как сделать пользовательское приведение с помощью compojure-api и spec. Читая документы и код, я смог принуждение к входу (тело), ​​но не могу принуждение к телу ответа. В частности, у меня есть пользовательский тип, метка времен…
12 окт '17 в 05:48
1 ответ

Compojure-api не уважающий тело от ring.mock.requests

Я пытаюсь использовать библиотеку ring.mock.requests для тестирования службы http. У меня есть этот кусок кода (auth-routes (-> (mock/request :post "/auth/user") (mock/body {:username "user" :password "pass"}) (mock/content-type "application/json…
26 май '16 в 02:02
3 ответа

Clojure, Compojure-api: заголовки запросов доступа

Я пытаюсь реализовать аутентификацию конечной точки запроса. Для этого я хочу получить доступ к значению accessToken из заголовков запросов. Конечная точка моего запроса GET CURL Command curl -X GET \ 'http://localhost:3000/hello?id=10' \ -H 'access…
26 июл '17 в 09:50
2 ответа

Как сделать буквальную функцию, которая не принимает аргументов и возвращает постоянное значение?

Я пытаюсь выучить Clojure, и я заблокирован синтаксисом буквальной функции. Я не могу понять, что буквальный эквивалент функции (defn fourteen [] 14) является. (def fourteen (fn [] 14)) ;; => #'user/fourteen (fourteen) ;; => 14 (defn defn-four…
02 мар '16 в 02:05
0 ответов

Async Compojure-Api Middleware не работает

Мое промежуточное ПО выдает ошибку только для асинхронных запросов, не знаю почему: project.clj (defproject asyncy "0.1.0-SNAPSHOT" :description "FIXME: write description" :dependencies [[org.clojure/clojure "1.9.0"] [metosin/compojure-api "1.1.11"]…
1 ответ

Clojure: разница между defrecord и defschema

Я новичок в clojure. Я хочу получить x записей с полями из базы данных и хочу вставить записи в базу данных. Какой раз я должен использовать между defrecord а также defschema по этому сценарию? Это то же самое?
25 июл '17 в 07:07
1 ответ

Схема или значение возвращаемого значения в compojure-api

compojure-api позволяет определить return схема: (s/defschema Pizza {:name s/Str}) (GET "/pizza/:id" [id] :return Pizza :summary "returns a Pizza" (ok (get-pizza id))) Моя проблема, когда get-pizza FN возвращает 404 {:status 404 :body {:message "In…
1 ответ

Кольцо lein uberjar - java.lang.NoClassDefFoundError: clojure/lang/Var

Не знаю почему, когда я lein with-profile +live ring uberjar а потом java -jar мой Uberjar я получаю это исключение java.lang.NoClassDefFoundError: clojure/lang/Var, project.clj: (defproject gn-preview-api "0.1.0-SNAPSHOT" :description "FIXME: write…
15 авг '18 в 01:03
1 ответ

Избегать повторения при использовании schema.core

Я определил следующую схему: (s/defschema Card {:cardNumber s/Str :cvv s/Str :creditCardMonthValidity s/Str :creditCardYearValidity s/Str :cpf s/Str :name s/Str :phoneNumber s/Str}) и затем в маршруте я использую те же ключи в ответе JSON: (GET "/ca…
12 янв '17 в 20:53