AngularJSを使用していて、以下のコードでサーバサイドAPIのデリートを呼び出したのですが、デリートできずになぜかメソッドがOPTIONSになってしまいます。

$scope.delete = function(video){
    //delete
    Video.delete({id: video.id});
  };

GoogleのdevtoolのGeneralは以下のようになっています。

Remote Address:[::1]:9000
Request URL:http://localhost:9000/video/1
Request Method:OPTIONS
Status Code:404 Not Found

またRequest Headersは以下のようになっています。

Accept:*/*
Accept-Encoding:gzip, deflate, sdch
Accept-Language:ja,en-US;q=0.8,en;q=0.6
Access-Control-Request-Headers:accept
Access-Control-Request-Method:DELETE
Connection:keep-alive
Host:localhost:9000
Origin:http://localhost:8000
Referer:http://localhost:8000/

Request HeadersではメソッドはDELETEなのに、GeneralではOPTIONSになっています。
また、AngularJSを使わないでDELETEした場合は正常に削除されていたので、サーバーサイドには問題はないと考えています。

同様の問題がPOST時にも起きてそのときはconfigに以下のコードを追加し問題はなおりましたが、DELETEの場合どう直せばいいのかわかりません。もしわかればご教授いただけるとありがたいです。

$httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;application/json;charset=utf-8';