'use strict' let backend = 'https://ntut.com.tw' const shortenUrl = async () => { let shortCode = $('#urlBox .short-code')[0].value || null let url = $('#urlBox .target-url')[0].value if (!url) { alert("URL is empty!") return } request({ shortCode, url }) .done((res) => { console.log(res) addNewRow(res) }) .fail((err) => { console.log(err) if (err.status == 409) { alert("This code has been used.") } else { alert("Failed to establish connection.") } }) } const addNewRow = (data) => { let view = $('#urlBox .urls') view.append($(`

ntut.com.tw/${data.shortCode}

${data.url}

`)) } const request = ({ shortCode, url }) => { return $.ajax({ type: 'POST', dataType: 'json', url: `${backend}/api/shortUrl`, data: JSON.stringify({ shortCode, url }), processData: false, contentType: 'application/json; charset=UTF-8' }) }