Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
students
reservation-service
Commits
61a30671
Commit
61a30671
authored
Nov 06, 2020
by
Yoon, Daeki
😅
Browse files
final error
parent
45c8051b
Changes
26
Expand all
Hide whitespace changes
Inline
Side-by-side
client/src/index.js
View file @
61a30671
import
React
from
'
react
'
;
import
ReactDOM
from
'
react-dom
'
;
import
'
./index.css
'
;
import
App
from
'
./App
'
;
import
reportWebVitals
from
'
./reportWebVitals
'
;
import
{
BrowserRouter
as
Router
,
Route
,
Redirect
,
Switch
}
from
'
react-router-dom
'
;
import
*
as
serviceWorker
from
'
./serviceWorker
'
;
import
'
bootstrap
'
;
import
'
bootstrap/dist/css/bootstrap.css
'
;
import
axios
from
'
axios
'
;
import
{
PrivateRoute
}
from
'
./Components/PrivateRoute
'
;
import
Login
from
'
./Pages/LoginPage
'
;
import
Home
from
'
./Pages/HomePage
'
;
import
Signup
from
'
./Pages/SignupPage
'
;
import
Find
from
'
./Pages/FindPage
'
;
import
Change
from
'
./Pages/ChangePage
'
;
import
Apply
from
'
./Pages/ApplyPage
'
;
import
Check
from
'
./Pages/CheckPage
'
;
import
Notice
from
'
./Pages/NoticePage
'
;
import
ACheck
from
'
./Pages/ACheckPage
'
;
import
Write
from
'
./Pages/WritePage
'
;
import
Modify
from
'
./Pages/ModifyPage
'
;
axios
.
defaults
.
validateStatus
=
function
(
status
)
{
return
status
<
500
;
// default
}
ReactDOM
.
render
(
<
React
.
StrictMode
>
<
App
/>
<
/React.StrictMode>
,
<
Router
>
<
Switch
>
<
PrivateRoute
exact
path
=
"
/
"
component
=
{
Home
}
/
>
<
Route
path
=
"
/login
"
component
=
{
Login
}
/
>
<
Route
path
=
"
/home
"
component
=
{
Home
}
/
>
<
Route
path
=
"
/signup
"
component
=
{
Signup
}
/
>
<
Route
path
=
"
/find
"
component
=
{
Find
}
/
>
<
Route
path
=
"
/change
"
component
=
{
Change
}
/
>
<
Route
path
=
"
/apply/:id
"
component
=
{
Apply
}
/
>
<
Route
path
=
"
/check/:id
"
component
=
{
Check
}
/
>
<
Route
path
=
"
/modify/:id
"
component
=
{
Modify
}
/
>
<
Route
path
=
"
/write
"
component
=
{
Write
}
/
>
<
Route
path
=
"
/notice
"
component
=
{
Notice
}
/
>
<
Route
path
=
"
/acheck/:id
"
component
=
{
ACheck
}
/
>
<
Redirect
path
=
"
/home
"
to
=
"
/
"
/>
<
Redirect
path
=
"
/change/:id
"
to
=
"
/change
"
/>
<
Redirect
path
=
"
/notice
"
to
=
"
/notice
"
/>
<
/Switch
>
<
/Router>
,
document
.
getElementById
(
'
root
'
)
);
// If you want
to start measuring performance in your app, pass a function
//
to log results (for example: reportWebVitals(console.log))
//
or send to an analytics endpoint. Learn more
: https://bit.ly/CRA-
vitals
reportWebVitals
();
// If you want
your app to work offline and load faster, you can change
//
unregister() to register() below. Note this comes with some pitfalls.
//
Learn more about service workers
: https://bit.ly/CRA-
PWA
serviceWorker
.
unregister
();
\ No newline at end of file
client/src/serviceWorker.js
0 → 100644
View file @
61a30671
// This optional code is used to register a service worker.
// register() is not called by default.
// This lets the app load faster on subsequent visits in production, and gives
// it offline capabilities. However, it also means that developers (and users)
// will only see deployed updates on subsequent visits to a page, after all the
// existing tabs open on the page have been closed, since previously cached
// resources are updated in the background.
// To learn more about the benefits of this model and instructions on how to
// opt-in, read https://bit.ly/CRA-PWA
const
isLocalhost
=
Boolean
(
window
.
location
.
hostname
===
'
localhost
'
||
// [::1] is the IPv6 localhost address.
window
.
location
.
hostname
===
'
[::1]
'
||
// 127.0.0.0/8 are considered localhost for IPv4.
window
.
location
.
hostname
.
match
(
/^127
(?:\.(?:
25
[
0-5
]
|2
[
0-4
][
0-9
]
|
[
01
]?[
0-9
][
0-9
]?)){3}
$/
)
);
export
function
register
(
config
)
{
if
(
process
.
env
.
NODE_ENV
===
'
production
'
&&
'
serviceWorker
'
in
navigator
)
{
// The URL constructor is available in all browsers that support SW.
const
publicUrl
=
new
URL
(
process
.
env
.
PUBLIC_URL
,
window
.
location
.
href
);
if
(
publicUrl
.
origin
!==
window
.
location
.
origin
)
{
// Our service worker won't work if PUBLIC_URL is on a different origin
// from what our page is served on. This might happen if a CDN is used to
// serve assets; see https://github.com/facebook/create-react-app/issues/2374
return
;
}
window
.
addEventListener
(
'
load
'
,
()
=>
{
const
swUrl
=
`
${
process
.
env
.
PUBLIC_URL
}
/service-worker.js`
;
if
(
isLocalhost
)
{
// This is running on localhost. Let's check if a service worker still exists or not.
checkValidServiceWorker
(
swUrl
,
config
);
// Add some additional logging to localhost, pointing developers to the
// service worker/PWA documentation.
navigator
.
serviceWorker
.
ready
.
then
(()
=>
{
console
.
log
(
'
This web app is being served cache-first by a service
'
+
'
worker. To learn more, visit https://bit.ly/CRA-PWA
'
);
});
}
else
{
// Is not localhost. Just register service worker
registerValidSW
(
swUrl
,
config
);
}
});
}
}
function
registerValidSW
(
swUrl
,
config
)
{
navigator
.
serviceWorker
.
register
(
swUrl
)
.
then
(
registration
=>
{
registration
.
onupdatefound
=
()
=>
{
const
installingWorker
=
registration
.
installing
;
if
(
installingWorker
==
null
)
{
return
;
}
installingWorker
.
onstatechange
=
()
=>
{
if
(
installingWorker
.
state
===
'
installed
'
)
{
if
(
navigator
.
serviceWorker
.
controller
)
{
// At this point, the updated precached content has been fetched,
// but the previous service worker will still serve the older
// content until all client tabs are closed.
console
.
log
(
'
New content is available and will be used when all
'
+
'
tabs for this page are closed. See https://bit.ly/CRA-PWA.
'
);
// Execute callback
if
(
config
&&
config
.
onUpdate
)
{
config
.
onUpdate
(
registration
);
}
}
else
{
// At this point, everything has been precached.
// It's the perfect time to display a
// "Content is cached for offline use." message.
console
.
log
(
'
Content is cached for offline use.
'
);
// Execute callback
if
(
config
&&
config
.
onSuccess
)
{
config
.
onSuccess
(
registration
);
}
}
}
};
};
})
.
catch
(
error
=>
{
console
.
error
(
'
Error during service worker registration:
'
,
error
);
});
}
function
checkValidServiceWorker
(
swUrl
,
config
)
{
// Check if the service worker can be found. If it can't reload the page.
fetch
(
swUrl
,
{
headers
:
{
'
Service-Worker
'
:
'
script
'
},
})
.
then
(
response
=>
{
// Ensure service worker exists, and that we really are getting a JS file.
const
contentType
=
response
.
headers
.
get
(
'
content-type
'
);
if
(
response
.
status
===
404
||
(
contentType
!=
null
&&
contentType
.
indexOf
(
'
javascript
'
)
===
-
1
)
)
{
// No service worker found. Probably a different app. Reload the page.
navigator
.
serviceWorker
.
ready
.
then
(
registration
=>
{
registration
.
unregister
().
then
(()
=>
{
window
.
location
.
reload
();
});
});
}
else
{
// Service worker found. Proceed as normal.
registerValidSW
(
swUrl
,
config
);
}
})
.
catch
(()
=>
{
console
.
log
(
'
No internet connection found. App is running in offline mode.
'
);
});
}
export
function
unregister
()
{
if
(
'
serviceWorker
'
in
navigator
)
{
navigator
.
serviceWorker
.
ready
.
then
(
registration
=>
{
registration
.
unregister
();
})
.
catch
(
error
=>
{
console
.
error
(
error
.
message
);
});
}
}
client/yarn.lock
View file @
61a30671
This diff is collapsed.
Click to expand it.
server/routes/notices.js
View file @
61a30671
...
...
@@ -14,7 +14,29 @@ router.get('/', function (req, res, next) {
next
(
err
);
});
// res.status(404).json({error:"없음."})
res
.
status
(
201
).
json
(
notices
);
// res.status(201).json(notices);
});
router
.
get
(
'
/:id
'
,
function
(
req
,
res
,
next
)
{
Notice
.
findOne
({
_id
:
req
.
params
.
id
},
function
(
err
,
notice
)
{
if
(
err
)
return
res
.
status
(
500
).
json
({
error
:
err
});
res
.
status
(
201
).
json
(
notice
);
})
});
router
.
delete
(
'
/:id
'
,
function
(
req
,
res
,
next
)
{
Notice
.
findOne
({
_id
:
req
.
params
.
id
},
function
(
err
,
notice
)
{
if
(
err
)
return
res
.
status
(
500
).
json
({
error
:
err
});
notice
.
remove
()
.
then
(()
=>
{
console
.
log
();
res
.
status
(
201
).
json
();
})
.
catch
((
err
)
=>
{
console
.
error
(
err
);
next
(
err
);
});
})
});
module
.
exports
=
router
;
\ No newline at end of file
server/routes/users.js
View file @
61a30671
...
...
@@ -44,10 +44,11 @@ router.get('/:_id', verifyToken, function (req, res, next) {
router
.
get
(
'
/admin/:_id
'
,
function
(
req
,
res
,
next
)
{
console
.
log
(
'
/admin get req.params
'
,
req
.
params
)
User
.
findOne
({
_id
:
req
.
params
.
_id
},
'
role
'
,
function
(
err
,
user
)
{
User
.
findOne
({
_id
:
req
.
params
.
_id
},
function
(
err
,
user
)
{
if
(
err
)
return
res
.
status
(
500
).
json
({
error
:
err
});
if
(
user
.
role
==
'
admin
'
)
{
next
();
if
(
user
.
role
===
'
admin
'
)
{
res
.
status
(
201
).
json
(
user
);
// next();
}
else
return
res
.
status
(
404
).
json
({
error
:
'
권한이 없습니다.
'
})
})
...
...
server/routes/writes.js
View file @
61a30671
...
...
@@ -4,21 +4,42 @@ const Notice = require('../models/notice');
const
router
=
express
.
Router
();
router
.
post
(
'
/
'
,
function
(
req
,
res
,
next
)
{
console
.
log
(
"
writes req.body
"
,
req
.
body
)
const
notice
=
new
Notice
({
notice_title
:
req
.
body
.
title
,
notice_author
:
"
예진
"
,
notice_content
:
req
.
body
.
content
});
console
.
log
(
notice
);
notice
.
save
()
.
then
((
result
)
=>
{
console
.
log
(
result
);
res
.
status
(
201
).
json
(
result
);
})
.
catch
((
err
)
=>
{
console
.
error
(
err
);
next
(
err
);
console
.
log
(
"
writes req.body
"
,
req
.
body
)
const
notice
=
new
Notice
({
notice_title
:
req
.
body
.
title
,
notice_author
:
req
.
body
.
name
,
notice_content
:
req
.
body
.
content
});
console
.
log
(
notice
);
notice
.
save
()
.
then
((
result
)
=>
{
console
.
log
(
result
);
res
.
status
(
201
).
json
(
result
);
})
.
catch
((
err
)
=>
{
console
.
error
(
err
);
next
(
err
);
});
});
router
.
put
(
'
/:id
'
,
function
(
req
,
res
,
next
)
{
console
.
log
(
'
/writes put req.params
'
,
req
.
params
.
id
)
Notice
.
findOne
({
_id
:
req
.
params
.
id
},
function
(
err
,
notice
)
{
if
(
err
)
return
res
.
status
(
500
).
json
({
error
:
err
});
if
(
req
.
body
.
title
.
indexOf
(
"
(수정)
"
)
===
-
1
)
{
notice
.
notice_title
=
req
.
body
.
title
+
"
(수정)
"
}
else
{
notice
.
notice_title
=
req
.
body
.
title
}
notice
.
post_date
=
new
Date
();
notice
.
notice_author
=
req
.
body
.
name
;
notice
.
notice_content
=
req
.
body
.
content
;
notice
.
save
()
.
then
((
result
)
=>
{
console
.
log
(
result
);
res
.
status
(
201
).
json
(
result
);
})
.
catch
((
err
)
=>
{
console
.
error
(
err
);
next
(
err
);
});
});
});
...
...
Prev
1
2
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment