読者です 読者をやめる 読者になる 読者になる

angular.jsのNgResourceでfuelphpにpost通信する際にハマったこと

angular.js側

App.factory("ModelUser",function($resource) {
  return $resource(
    "http://example.com/api/user/register", null, {
      regist: {
        method: "post",
      }
    }
  );
});

ModelUser.register({
  name: name,
  address: address
}).$promise.then(function(response) {
  conosole.log(response);
});

fuelphp

print_r(Input::post());//array() え、空!?

上記のようになってしまい、上手くいきませんでした。
ブラウザのコンソールで確認するとデータ自体は送っているようでした、、、

で、どうやらfuelphp側の実装に問題がありました。
こんな感じで格納されるんですね、、、とりあえず上手くいって助かりました。

print_r(Input::json());//array("name"=>"なまえ", "address"=>"じゅうしょ")

ついでに以下みたいに書くとvalidateとかもちゃんと動きます

$val = Validation::forge();
〜省略
if (!$val->run(Input::json())) {//★ココ
  throw new ValidateException;
}

すべて上手くいきました。よかったよかった