我正在尝试通过IOS Swift应用程序访问JHipster生成的API,它是我上传到Heroku上的。JHipster应用程序是用Oauth2保护的。基本上,我想实现一个注册功能,在这个功能中,我在IOS应用程序中提供凭据(电子邮件、登录和密码),然后调用JHipster应用程序上的/api/register
路径来注册这个用户。但是当我发出一个快速的Alamofire请求时,当我尝试调用/api/register
时,它会给我一个500的状态代码。
我在Heroku的JHipster应用程序:https://j-hipster-test-apiios.herokuapp.com
我的快速阿拉莫费尔请求:
class RegisterViewController: UIViewController {
let parameters: Parameters = [
"login": "Hello",
"password": "World",
"email": "Test@googlemail.com"
]
@IBAction func register(_ sender: UIButton) {
let sessionManager = SessionManager()
sessionManager.request("https://j-hipster-test-apiios.herokuapp.com/api/register", method: .post, parameters: parameters).validate().responseJSON { response in
print("----------------------------")
print(response)
print("----------------------------")
sessionManager.session.invalidateAndCancel()
}
}
我的Xcode日志(responseValidationFailed错误是由请求后的.validate()方法引起的,因为它期望的状态代码介于200和299之间):
FAILURE:
responseValidationFailed(Alamofire.AFError.ResponseValidationFailureReason.unacceptableStatusCode(500))
我的Heroku日志:
2016-11-04T17:38:36.148902+00:00 heroku[router]: at=info method=POST path="/api/register"
host=j-hipster-test-apiios.herokuapp.com request_id=7a1e1345-a8a5-43f2-abbc-4805037a47ef
fwd="93.210.40.139" dyno=web.1 connect=0ms service=13ms status=500 bytes=317
所以主要的问题是,为什么我在调用JHipster API的/api/register
路径时会得到一个500状态代码?
提前道谢!
最后我解决了这个问题。这不是一个JHipster问题,而是一个Alamofire解析问题。我总是用无效的json数据发出请求,因为我没有在Swift代码中验证我的凭据字典。如果我用jsonSerialization.data(withjsonObject:parameters)
序列化我的json数据,我就可以注册一个帐户。为了完整起见,我的解决方案如下:
class RegisterViewController: UIViewController {
@IBAction func register(_ sender: UIButton) {
let url = NSURL(string: "https://j-hipster-test-apiios.herokuapp.com/api/register")
var request = URLRequest(url: url as! URL)
request.httpMethod = "POST"
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
let parameters: Parameters = [
"activated": true,
"authorities": [ "ROLE_USER" ],
"createdBy": "TestName",
"createdDate": "2016-11-04T20:42:20.301Z",
"login": "Hello",
"password": "World",
"email": "Test@googlemail.com"
"firstName": "TestName",
"id": 0,
"langKey": "en",
"lastModifiedBy": "TestName",
"lastModifiedDate": "2016-11-04T20:42:20.302Z",
"lastName": "TestName",
]
request.httpBody = try! JSONSerialization.data(withJSONObject: parameters)
let sessionManager = SessionManager()
//self.alamofireManager = sessionManager
sessionManager.request(request).responseJSON { response in
switch response.response!.statusCode {
case 201: print("Created")
case 400: print("Username already in use")
case 500: print("Error!")
default: print("Error!")
}
sessionManager.session.invalidateAndCancel()
}
}
}
我通过Ngrok URL为我的Facebook页面设置了我的Webhok,并应用了Messenger平台的所有要求,但当我将消息发送到我的Facebook页面时,我遇到以下错误: 在Laravel中的routs文件中,我使用Get和Post函数,如下所示: 发送消息时,我在storage/app.logs/laravel中收到以下错误: 我的公共职能索引: 请支持和感谢。
我正在为一个web使用flask构建一个api,我已经有了一个数据库,GET请求可以工作,但当我尝试发布时,它会给我这个错误 500内部服务器错误 这是我写的代码 这是我在邮递员上添加的请求 我还使用了一个本地服务器,我查看了其他链接,每个人都在询问日志,如果我没有错,我想我可以从 看法 这是日志的截图:(我想) 到底是什么问题我不明白 编辑:这是完整的代码: 第二次编辑:控制台日志 添加def错
问题内容: 我正在尝试为这个工作中的项目学习AJAX。我有一个网站加载病人正在服用的药物。 我递归调用此AJAX函数,以便它将附加一个包含单种药物和7天历史记录的新表。我在使代码在FF和IE中执行时遇到问题。在chrome中效果很好。我有显示xmlhttp.status的警报,这是我得到的: xmlhttp.status == 500(内部服务器错误)。 我注释掉了所有递归,因此将其范围缩小到了这
我收到以下错误 内部服务器错误 服务器遇到内部错误或配置错误,无法完成您的请求。 请联系服务器管理员,webmaster@strivemedicare.in并告知他们错误发生的时间,以及可能导致错误的任何行为。 有关此错误的详细信息,请参阅服务器错误日志。 此外,尝试使用错误文档处理请求时遇到 500 内部服务器错误错误。
我得到了这个错误。 内部服务器错误 服务器遇到内部错误或配置错误,无法完成您的请求。 请联系webmaster@crimsonbux.com的服务器管理员,并告知他们错误发生的时间,以及您所做的任何可能导致错误的事情。 有关此错误的详细信息,请参阅服务器错误日志。 此外,尝试使用错误文档处理请求时遇到 500 内部服务器错误错误。 www.crimsonbux.com端口80上的Apache/2
服务器升级到PHP5.6后,我的SilverStripe站点出现问题。我的web主机将服务器从PHP5.3升级到PHP5.6,现在每个页面上都会出现500个服务器错误。 来自SilverStripe的消息是: 很抱歉,处理您的请求时出现问题。 在服务器错误日志文件中没有错误条目。在服务器访问日志中,您可以看到500错误: 错误:[09/Mar/2016:11:12:07 0100]“GET/Sec