我在处理点击事件时遇到了XmlHttpRequest的问题:
document.addEventListener("DOMContentLoaded",(e) =>.
XmlHttpRequest.open("POST", url, false)
认为这是一个范围问题,我对这个Request对象进行了引用:
request = new Request(@_callback,"POST") document .getElementById 'LoginButton' .addEventListener("click", @_performLogin);
_callback : (err, response) ->
if err then throw err
console.log(response)
console.log(response["status"])
if response["status"] == 200 then alert("Login successful!") else alert("Login Failed")
类方法:
_performLogin : () ->
username = document.getElementById('username').value
password = document.getElementById('password').value
url = "https://dev.kittyhawk.io/api/login?email=" + username + "&password=" + password
request._sendRequest(url)
注意:Request只是XmlHttpRequest
的包装器知道发生了什么事吗?
编辑: 内部请求类 请注意,catch()不会被调用,send()会被执行但我在Chrome中看不到网络请求。在Safari中,我看到请求为红色(没有状态)。此外,这是非常新的,所以请耐心等待。 :)
_sendRequest:(targetUrl) =>
try
if targetUrl? then @_url = targetUrl else new Error("Missing parameter: URL")
@_request.open(@_type,@_url,true)
@_request.send()
catch e
console.log(e)
alert("Error:" + e)