mirror of
https://github.com/storytold/voder-proxy.git
synced 2026-10-19 07:43:12 +00:00
Broke OPTION / CORS by not matching on method
This commit is contained in:
+2
-2
@@ -1,7 +1,7 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "tts-service-proxy"
|
name = "tts-service-proxy"
|
||||||
edition = "2018"
|
edition = "2018"
|
||||||
version = "0.0.1"
|
version = "0.0.2"
|
||||||
authors = [
|
authors = [
|
||||||
"Brandon Thomas <bt@brand.io>",
|
"Brandon Thomas <bt@brand.io>",
|
||||||
"Brandon Thomas <echelon@gmail.com>",
|
"Brandon Thomas <echelon@gmail.com>",
|
||||||
@@ -25,4 +25,4 @@ serde = "1.0.104"
|
|||||||
serde_derive = "1.0.104"
|
serde_derive = "1.0.104"
|
||||||
serde_json = "1.0.55"
|
serde_json = "1.0.55"
|
||||||
tokio = { version = "0.2", features = ["full"] }
|
tokio = { version = "0.2", features = ["full"] }
|
||||||
toml = "0.5.6"
|
toml = "0.5.6"
|
||||||
|
|||||||
+5
-5
@@ -9,10 +9,10 @@ pub mod speak_proxy;
|
|||||||
use anyhow::Result as AnyhowResult;
|
use anyhow::Result as AnyhowResult;
|
||||||
use crate::newrelic_logger::NewRelicLogger;
|
use crate::newrelic_logger::NewRelicLogger;
|
||||||
use crate::speak_proxy::speak_proxy_with_retry;
|
use crate::speak_proxy::speak_proxy_with_retry;
|
||||||
use hyper::StatusCode;
|
|
||||||
use hyper::server::conn::AddrStream;
|
use hyper::server::conn::AddrStream;
|
||||||
use hyper::service::{service_fn, make_service_fn};
|
use hyper::service::{service_fn, make_service_fn};
|
||||||
use hyper::{Body, Request, Response, Server};
|
use hyper::{Body, Request, Response, Server};
|
||||||
|
use hyper::{StatusCode, Method};
|
||||||
use rand::seq::IteratorRandom;
|
use rand::seq::IteratorRandom;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use std::convert::Infallible;
|
use std::convert::Infallible;
|
||||||
@@ -125,8 +125,8 @@ pub async fn handle(
|
|||||||
newrelic_logger: Arc<NewRelicLogger>,
|
newrelic_logger: Arc<NewRelicLogger>,
|
||||||
server_params: ServerParams) -> Result<Response<Body>, Infallible>
|
server_params: ServerParams) -> Result<Response<Body>, Infallible>
|
||||||
{
|
{
|
||||||
match req.uri().path() {
|
match (req.method(), req.uri().path()) {
|
||||||
"/speak" => {
|
(&Method::POST, "/speak") => {
|
||||||
let nr_transaction = newrelic_logger.web_transaction("/speak");
|
let nr_transaction = newrelic_logger.web_transaction("/speak");
|
||||||
let result = speak_proxy_with_retry(
|
let result = speak_proxy_with_retry(
|
||||||
client_ip,
|
client_ip,
|
||||||
@@ -141,7 +141,7 @@ pub async fn handle(
|
|||||||
Err(error) => Ok(error.to_response()),
|
Err(error) => Ok(error.to_response()),
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/speak_spectrogram" => {
|
(&Method::POST, "/speak_spectrogram") => {
|
||||||
let nr_transaction = newrelic_logger.web_transaction("/speak_spectrogram");
|
let nr_transaction = newrelic_logger.web_transaction("/speak_spectrogram");
|
||||||
let result = speak_proxy_with_retry(
|
let result = speak_proxy_with_retry(
|
||||||
client_ip,
|
client_ip,
|
||||||
@@ -156,7 +156,7 @@ pub async fn handle(
|
|||||||
Err(error) => Ok(error.to_response()),
|
Err(error) => Ok(error.to_response()),
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/proxy_health" => {
|
(&Method::GET, "/proxy_health") => {
|
||||||
let _droppable_transaction = newrelic_logger.web_transaction("/proxy_health");
|
let _droppable_transaction = newrelic_logger.web_transaction("/proxy_health");
|
||||||
health_check_response(req)
|
health_check_response(req)
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user