Deploy on BTP (#793)
minimal changes required to deploy the CAP samples in _shared db_ mode: - db: all bookshop, orders, reviews CDS models into one db instance (_shared-db_) - services: bookstore, orders, reviews - approuter with UI symlinks: - Vue: bookshop, reviews - Fiori: orders - authentification: xsuaa - messaging: Event Mesh - destinations: orders, reviews - cds: - projection OrdersNoDraft for backend direct access - event OrderChanged - deployment: mta.yml
This commit is contained in:
committed by
GitHub
parent
ac4154eef3
commit
737e766d53
@@ -69,3 +69,25 @@ const reviews = Vue.createApp ({
|
||||
|
||||
// initially fill list of my reviews
|
||||
reviews.fetch()
|
||||
|
||||
axios.interceptors.request.use(csrfToken)
|
||||
function csrfToken (request) {
|
||||
if (request.method === 'head' || request.method === 'get') return request
|
||||
if ('csrfToken' in document) {
|
||||
request.headers['x-csrf-token'] = document.csrfToken
|
||||
return request
|
||||
}
|
||||
return fetchToken().then(token => {
|
||||
document.csrfToken = token
|
||||
request.headers['x-csrf-token'] = document.csrfToken
|
||||
return request
|
||||
}).catch(() => {
|
||||
document.csrfToken = null // set mark to not try again
|
||||
return request
|
||||
})
|
||||
|
||||
function fetchToken() {
|
||||
return axios.get('/', { headers: { 'x-csrf-token': 'fetch' } })
|
||||
.then(res => res.headers['x-csrf-token'])
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user