Project

General

Profile

500 when login via API using C#?

Added by Pok Lau over 13 years ago

I am writing an application in C# 2.0 to consume the Redmine API. An exception is thrown when an HttpWebRequest is sent with the message The remote server returned an error: (500) Internal Server Error.

Checked the log in Redmine and got this:

Processing AccountController#login (for 192.168.1.10 at 2011-03-30 14:46:58) [POST]
  Parameters: {"back_url"=>"http://redmineserver/news?format=atom", "action"=>"login", "username"=>"foo_user", "controller"=>"account", "password"=>"[FILTERED]"}
Rendering template within layouts/base
Rendering common/error (500)

Looks like the application doesn't really happy with the request. Any ideas?


Replies (3)

RE: 500 when login via API using C#? - Added by Felix Schäfer over 13 years ago

Have a look at your Redmine logs, there should be an error trace in there.

What I don't understand is why you get to the login page if you say you want to use the API.

RE: 500 when login via API using C#? - Added by Pok Lau over 13 years ago

I am trying to authenticate before allowing any other activities. I turn debug on, but still can't see anything that tells what's go wrong.

Processing AccountController#login (for 192.168.1.10 at 2011-03-30 15:34:55) [POST]
  Parameters: {"back_url"=>"http://redmineserver/news?format=atom", "action"=>"login", "username"=>"foo_user", "controller"=>"account", "password"=>"[FILTERED]"}
Rendering template within layouts/base
Rendering common/error (500)
  [4;36;1mSQL (0.0ms)[0m   [0;1mSET NAMES 'utf8'[0m
  [4;35;1mSQL (0.0ms)[0m   [0mSET SQL_AUTO_IS_NULL=0[0m

Processing AccountController#login (for 192.168.1.10 at 2011-03-31 08:44:48) [POST]
  Parameters: {"back_url"=>"http://redmineserver/news?format=atom", "action"=>"login", "username"=>"foo_user", "controller"=>"account", "password"=>"[FILTERED]"}
  [4;36;1mSetting Columns (31.3ms)[0m   [0;1mSHOW FIELDS FROM `settings`[0m
  [4;35;1mSQL (0.0ms)[0m   [0mSELECT max(`settings`.updated_on) AS max_updated_on FROM `settings` [0m
  [4;36;1mSetting Load (15.6ms)[0m   [0;1mSELECT * FROM `settings` WHERE (`settings`.`name` = 'rest_api_enabled') LIMIT 1[0m
  [4;35;1mAnonymousUser Columns (31.3ms)[0m   [0mSHOW FIELDS FROM `users`[0m
  [4;36;1mAnonymousUser Load (31.3ms)[0m   [0;1mSELECT * FROM `users` WHERE ( (`users`.`type` = 'AnonymousUser' ) ) LIMIT 1[0m
  [4;35;1mSetting Load (0.0ms)[0m   [0mSELECT * FROM `settings` WHERE (`settings`.`name` = 'default_language') LIMIT 1[0m
Rendering template within layouts/base
Rendering common/error (500)
  [4;36;1mSetting Load (0.0ms)[0m   [0;1mSELECT * FROM `settings` WHERE (`settings`.`name` = 'app_title') LIMIT 1[0m
  [4;35;1mSetting Load (0.0ms)[0m   [0mSELECT * FROM `settings` WHERE (`settings`.`name` = 'ui_theme') LIMIT 1[0m
  [4;36;1mSetting Load (0.0ms)[0m   [0;1mSELECT * FROM `settings` WHERE (`settings`.`name` = 'text_formatting') LIMIT 1[0m
  [4;35;1mSetting Load (0.0ms)[0m   [0mSELECT * FROM `settings` WHERE (`settings`.`name` = 'self_registration') LIMIT 1[0m
  [4;36;1mProject Load (0.0ms)[0m   [0;1mSELECT `projects`.* FROM `projects` INNER JOIN `members` ON `projects`.id = `members`.project_id WHERE ((`members`.user_id = 3) AND ((projects.status=1))) [0m

RE: 500 when login via API using C#? - Added by Pok Lau over 13 years ago

Problem resolved. It's the URL that I passed in the request did not hit the controller properly.
Passing URL http://redmineserver/login/?format=xml&username=foo_user&password=foo_password and specify text/xml in the content header has resolved the problem.

    (1-3/3)