add real main page
This commit is contained in:
parent
6840415069
commit
6392d20ace
15
src/main.rs
15
src/main.rs
@ -1,4 +1,4 @@
|
|||||||
use rocket::{futures::lock::Mutex, get, http::Status, response::Redirect, response::content::RawHtml, routes, State};
|
use rocket::{futures::lock::Mutex, get, fs::FileServer, http::Status, response::Redirect, response::content::RawHtml, routes, State};
|
||||||
use tokio_postgres::{Client, NoTls, Statement};
|
use tokio_postgres::{Client, NoTls, Statement};
|
||||||
use std::fs::File;
|
use std::fs::File;
|
||||||
|
|
||||||
@ -29,23 +29,14 @@ async fn main() {
|
|||||||
config.port = 3020;
|
config.port = 3020;
|
||||||
let state = GlobalState { db_client: client, stmt_get_link: statements.0, stmt_add_link: statements.1 };
|
let state = GlobalState { db_client: client, stmt_get_link: statements.0, stmt_add_link: statements.1 };
|
||||||
rocket::build()
|
rocket::build()
|
||||||
.mount("/", routes![main_page, create, go_to_link])
|
.mount("/", routes![create, go_to_link])
|
||||||
|
.mount("/", FileServer::from("static"))
|
||||||
.manage(Mutex::new(state))
|
.manage(Mutex::new(state))
|
||||||
.configure(config)
|
.configure(config)
|
||||||
.launch()
|
.launch()
|
||||||
.await.unwrap();
|
.await.unwrap();
|
||||||
}
|
}
|
||||||
|
|
||||||
#[get("/")]
|
|
||||||
fn main_page() -> Result<RawHtml<File>, Status> {
|
|
||||||
match File::open("./static/page.html") {
|
|
||||||
Ok(f) => Ok(RawHtml(f)),
|
|
||||||
Err(e) => {
|
|
||||||
eprintln!("open static page error: {}", e);
|
|
||||||
Err(Status::InternalServerError)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#[get("/create?<url>&<secret>&<length>&<link>")]
|
#[get("/create?<url>&<secret>&<length>&<link>")]
|
||||||
async fn create(state: &State<Mutex<GlobalState>>, url: &str, secret: Option<&str>, length: Option<u32>, link: Option<&str>) -> (Status, String) {
|
async fn create(state: &State<Mutex<GlobalState>>, url: &str, secret: Option<&str>, length: Option<u32>, link: Option<&str>) -> (Status, String) {
|
||||||
let mut allow_secret_options = false;
|
let mut allow_secret_options = false;
|
||||||
|
1
static/404.html
Normal file
1
static/404.html
Normal file
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
|||||||
|
self.__BUILD_MANIFEST={__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/_error":["static/chunks/pages/_error-7ba65e1336b92748.js"],sortedPages:["/_app","/_error"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
@ -0,0 +1 @@
|
|||||||
|
self.__SSG_MANIFEST=new Set([]);self.__SSG_MANIFEST_CB&&self.__SSG_MANIFEST_CB()
|
2
static/_next/static/chunks/117-c9f4bb93c4396135.js
Normal file
2
static/_next/static/chunks/117-c9f4bb93c4396135.js
Normal file
File diff suppressed because one or more lines are too long
1
static/_next/static/chunks/124-178b728f4f8db7e3.js
Normal file
1
static/_next/static/chunks/124-178b728f4f8db7e3.js
Normal file
File diff suppressed because one or more lines are too long
1
static/_next/static/chunks/999-2c5a9bc915127a8e.js
Normal file
1
static/_next/static/chunks/999-2c5a9bc915127a8e.js
Normal file
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
|||||||
|
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[409],{7589:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/_not-found/page",function(){return n(3634)}])},3634:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return s}}),n(7043);let i=n(7437);n(2265);let o={fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},l={display:"inline-block"},r={display:"inline-block",margin:"0 20px 0 0",padding:"0 23px 0 0",fontSize:24,fontWeight:500,verticalAlign:"top",lineHeight:"49px"},d={fontSize:14,fontWeight:400,lineHeight:"49px",margin:0};function s(){return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("title",{children:"404: This page could not be found."}),(0,i.jsx)("div",{style:o,children:(0,i.jsxs)("div",{children:[(0,i.jsx)("style",{dangerouslySetInnerHTML:{__html:"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}),(0,i.jsx)("h1",{className:"next-error-h1",style:r,children:"404"}),(0,i.jsx)("div",{style:l,children:(0,i.jsx)("h2",{style:d,children:"This page could not be found."})})]})})]})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)}},function(e){e.O(0,[971,117,744],function(){return e(e.s=7589)}),_N_E=e.O()}]);
|
File diff suppressed because one or more lines are too long
1
static/_next/static/chunks/app/page-7204e32d7dd7b646.js
Normal file
1
static/_next/static/chunks/app/page-7204e32d7dd7b646.js
Normal file
File diff suppressed because one or more lines are too long
1
static/_next/static/chunks/fd9d1056-49fc3c8c9946f73c.js
Normal file
1
static/_next/static/chunks/fd9d1056-49fc3c8c9946f73c.js
Normal file
File diff suppressed because one or more lines are too long
1
static/_next/static/chunks/framework-f66176bb897dc684.js
Normal file
1
static/_next/static/chunks/framework-f66176bb897dc684.js
Normal file
File diff suppressed because one or more lines are too long
1
static/_next/static/chunks/main-7db2d04df4bdb781.js
Normal file
1
static/_next/static/chunks/main-7db2d04df4bdb781.js
Normal file
File diff suppressed because one or more lines are too long
1
static/_next/static/chunks/main-app-13b5fdde5b2b9ee5.js
Normal file
1
static/_next/static/chunks/main-app-13b5fdde5b2b9ee5.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[744],{5240:function(e,n,t){Promise.resolve().then(t.t.bind(t,2846,23)),Promise.resolve().then(t.t.bind(t,9107,23)),Promise.resolve().then(t.t.bind(t,1060,23)),Promise.resolve().then(t.t.bind(t,4707,23)),Promise.resolve().then(t.t.bind(t,80,23)),Promise.resolve().then(t.t.bind(t,6423,23))}},function(e){var n=function(n){return e(e.s=n)};e.O(0,[971,117],function(){return n(4278),n(5240)}),_N_E=e.O()}]);
|
@ -0,0 +1 @@
|
|||||||
|
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[888],{1597:function(n,_,u){(window.__NEXT_P=window.__NEXT_P||[]).push(["/_app",function(){return u(8141)}])}},function(n){var _=function(_){return n(n.s=_)};n.O(0,[774,179],function(){return _(1597),_(7253)}),_N_E=n.O()}]);
|
@ -0,0 +1 @@
|
|||||||
|
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[820],{1981:function(n,_,u){(window.__NEXT_P=window.__NEXT_P||[]).push(["/_error",function(){return u(8529)}])}},function(n){n.O(0,[888,774,179],function(){return n(n.s=1981)}),_N_E=n.O()}]);
|
1
static/_next/static/chunks/polyfills-42372ed130431b0a.js
Normal file
1
static/_next/static/chunks/polyfills-42372ed130431b0a.js
Normal file
File diff suppressed because one or more lines are too long
1
static/_next/static/chunks/webpack-44e133b6860a2cda.js
Normal file
1
static/_next/static/chunks/webpack-44e133b6860a2cda.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
!function(){"use strict";var e,t,r,n,o,u,i,c,f,a={},l={};function s(e){var t=l[e];if(void 0!==t)return t.exports;var r=l[e]={exports:{}},n=!0;try{a[e](r,r.exports,s),n=!1}finally{n&&delete l[e]}return r.exports}s.m=a,e=[],s.O=function(t,r,n,o){if(r){o=o||0;for(var u=e.length;u>0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[r,n,o];return}for(var i=1/0,u=0;u<e.length;u++){for(var r=e[u][0],n=e[u][1],o=e[u][2],c=!0,f=0;f<r.length;f++)i>=o&&Object.keys(s.O).every(function(e){return s.O[e](r[f])})?r.splice(f--,1):(c=!1,o<i&&(i=o));if(c){e.splice(u--,1);var a=n();void 0!==a&&(t=a)}}return t},r=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},s.t=function(e,n){if(1&n&&(e=this(e)),8&n||"object"==typeof e&&e&&(4&n&&e.__esModule||16&n&&"function"==typeof e.then))return e;var o=Object.create(null);s.r(o);var u={};t=t||[null,r({}),r([]),r(r)];for(var i=2&n&&e;"object"==typeof i&&!~t.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach(function(t){u[t]=function(){return e[t]}});return u.default=function(){return e},s.d(o,u),o},s.d=function(e,t){for(var r in t)s.o(t,r)&&!s.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},s.f={},s.e=function(e){return Promise.all(Object.keys(s.f).reduce(function(t,r){return s.f[r](e,t),t},[]))},s.u=function(e){},s.miniCssF=function(e){},s.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n={},o="_N_E:",s.l=function(e,t,r,u){if(n[e]){n[e].push(t);return}if(void 0!==r)for(var i,c,f=document.getElementsByTagName("script"),a=0;a<f.length;a++){var l=f[a];if(l.getAttribute("src")==e||l.getAttribute("data-webpack")==o+r){i=l;break}}i||(c=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,s.nc&&i.setAttribute("nonce",s.nc),i.setAttribute("data-webpack",o+r),i.src=s.tu(e)),n[e]=[t];var d=function(t,r){i.onerror=i.onload=null,clearTimeout(p);var o=n[e];if(delete n[e],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach(function(e){return e(r)}),t)return t(r)},p=setTimeout(d.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=d.bind(null,i.onerror),i.onload=d.bind(null,i.onload),c&&document.head.appendChild(i)},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.tt=function(){return void 0===u&&(u={createScriptURL:function(e){return e}},"undefined"!=typeof trustedTypes&&trustedTypes.createPolicy&&(u=trustedTypes.createPolicy("nextjs#bundler",u))),u},s.tu=function(e){return s.tt().createScriptURL(e)},s.p="/_next/",i={272:0,957:0},s.f.j=function(e,t){var r=s.o(i,e)?i[e]:void 0;if(0!==r){if(r)t.push(r[2]);else if(/^(272|957)$/.test(e))i[e]=0;else{var n=new Promise(function(t,n){r=i[e]=[t,n]});t.push(r[2]=n);var o=s.p+s.u(e),u=Error();s.l(o,function(t){if(s.o(i,e)&&(0!==(r=i[e])&&(i[e]=void 0),r)){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;u.message="Loading chunk "+e+" failed.\n("+n+": "+o+")",u.name="ChunkLoadError",u.type=n,u.request=o,r[1](u)}},"chunk-"+e,e)}}},s.O.j=function(e){return 0===i[e]},c=function(e,t){var r,n,o=t[0],u=t[1],c=t[2],f=0;if(o.some(function(e){return 0!==i[e]})){for(r in u)s.o(u,r)&&(s.m[r]=u[r]);if(c)var a=c(s)}for(e&&e(t);f<o.length;f++)n=o[f],s.o(i,n)&&i[n]&&i[n][0](),i[n]=0;return s.O(a)},(f=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(c.bind(null,0)),f.push=c.bind(null,f.push.bind(f))}();
|
3
static/_next/static/css/571ce0b59bb49d31.css
Normal file
3
static/_next/static/css/571ce0b59bb49d31.css
Normal file
File diff suppressed because one or more lines are too long
BIN
static/_next/static/media/122c360d7fe6d395-s.p.woff2
Normal file
BIN
static/_next/static/media/122c360d7fe6d395-s.p.woff2
Normal file
Binary file not shown.
BIN
static/_next/static/media/9bbb7f84f3601865-s.woff2
Normal file
BIN
static/_next/static/media/9bbb7f84f3601865-s.woff2
Normal file
Binary file not shown.
BIN
static/_next/static/media/9f05b6a2725a7318-s.woff2
Normal file
BIN
static/_next/static/media/9f05b6a2725a7318-s.woff2
Normal file
Binary file not shown.
BIN
static/_next/static/media/a8eac78432f0a60b-s.woff2
Normal file
BIN
static/_next/static/media/a8eac78432f0a60b-s.woff2
Normal file
Binary file not shown.
BIN
static/_next/static/media/c740c1d45290834f-s.woff2
Normal file
BIN
static/_next/static/media/c740c1d45290834f-s.woff2
Normal file
Binary file not shown.
BIN
static/_next/static/media/d0697bdd3fb49a78-s.woff2
Normal file
BIN
static/_next/static/media/d0697bdd3fb49a78-s.woff2
Normal file
Binary file not shown.
1
static/index.html
Normal file
1
static/index.html
Normal file
File diff suppressed because one or more lines are too long
9
static/index.txt
Normal file
9
static/index.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
2:I[9107,[],"ClientPageRoot"]
|
||||||
|
3:I[7196,["999","static/chunks/999-2c5a9bc915127a8e.js","124","static/chunks/124-178b728f4f8db7e3.js","931","static/chunks/app/page-7204e32d7dd7b646.js"],"default",1]
|
||||||
|
4:I[6109,["999","static/chunks/999-2c5a9bc915127a8e.js","185","static/chunks/app/layout-100effbdcc01b41f.js"],"default"]
|
||||||
|
5:I[4707,[],""]
|
||||||
|
6:I[6423,[],""]
|
||||||
|
7:I[3129,["999","static/chunks/999-2c5a9bc915127a8e.js","185","static/chunks/app/layout-100effbdcc01b41f.js"],"Toaster"]
|
||||||
|
0:["RMl8zgh98xq2tpkSJjZGK",[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",{"children":["__PAGE__",{},[["$L1",["$","$L2",null,{"props":{"params":{},"searchParams":{}},"Component":"$3"}],null],null],null]},[[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/571ce0b59bb49d31.css","precedence":"next","crossOrigin":"$undefined"}]],["$","html",null,{"suppressHydrationWarning":true,"children":["$","body",null,{"className":"__className_55d5d4 antialiased","children":["$","$L4",null,{"children":[["$","$L5",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[]}],["$","$L7",null,{"richColors":true}]]}]}]}]],null],null],["$L8",null]]]]
|
||||||
|
8:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","title","2",{"children":"link shortener"}]]
|
||||||
|
1:null
|
@ -1,10 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<title>url shortener</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
(url shortener)
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Loading…
Reference in New Issue
Block a user