{ "info": { "author": "\u00d6mer \u00dcCEL", "author_email": "omerucel@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# BasitApi [![Build Status](https://travis-ci.org/omerucel/basitapi.png)](https://travis-ci.org/omerucel/basitapi)\n\nRESTful API olu\u015fturman\u0131zda size yard\u0131mc\u0131 olan basit bir k\u00fct\u00fcphane. Django'nun\ns\u0131n\u0131f temelli View yap\u0131s\u0131 \u00fczerine kurulu. Bir RESTful API'de olmas\u0131 gereken\nbaz\u0131 temel \u00f6zellikleri sunar ve ba\u015fka da bir i\u015fe kar\u0131\u015fmaz.\n\nSundu\u011fu baz\u0131 temel \u00f6zellikler:\n\n* *Ba\u011flant\u0131daki method parametresi ile HTTP_METHOD ba\u015fl\u0131\u011f\u0131n\u0131n ezilmesi.*\n\n Baz\u0131 istemciler sadece baz\u0131 metodlar\u0131 g\u00f6ndermekle k\u0131s\u0131tland\u0131r\u0131labilirler. Bu\n t\u00fcrl\u00fc bir durumda API'nin do\u011fru \u00e7al\u0131\u015fabilmesi i\u00e7in ba\u011flant\u0131 i\u00e7inde *method*\n isimli parametreyi kullanabilirsiniz. Bu parametre ile HTTP_METHOD ezilir ve\n g\u00f6nderdi\u011finiz method parametresindeki de\u011fere g\u00f6re i\u015flemler y\u00fcr\u00fct\u00fcl\u00fcr.\n\n* *Her zaman 200 HTTP kodu ile d\u00f6n\u00fc\u015f.*\n\n Baz\u0131 istemciler sadece baz\u0131 hata kodlar\u0131na yan\u0131t verebilirler. BasitApi bu t\u00fcr durumlar i\u00e7in\n *suppress_response_codes* parametresine destek vermekte. Bu parametre de\u011feri\n 1 olarak g\u00f6nderildi\u011finde durumu ne olursa olsun t\u00fcm yan\u0131tlar 200 kodu ile\n g\u00f6nderilmekte.\n\n* *Yan\u0131t format\u0131.*\n\n Hem *Accept* ba\u015fl\u0131k bilgisine hem de ba\u011flant\u0131 dosya son ekine g\u00f6re yan\u0131t\n format\u0131 ayarlanabilmekte.\n\n\n## Kurulum\n\nPyPi \u00fczerinden kurulum i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabilirsiniz:\n\n```\n$ pip install basitapi\n```\n\nGithub \u00fczerinden kurulum i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabilirsiniz:\n\n```\n$ pip install -e git://github.com/omerucel/basitapi.git#egg=basitapi\n```\n\n## Kullan\u0131m\n\n### settings.py\n\n```python\nINSTALLED_APPS=(\n ...\n 'basitapi'\n)\n```\n\n### urls.py\n\nBa\u011flant\u0131 dosya son ekine g\u00f6re yan\u0131t format\u0131n\u0131 ayarlamak istemiyorsan\u0131z\nba\u011flant\u0131lar\u0131n\u0131z\u0131 *format_suffix_patterns* ile tekrar formatlaman\u0131za gerek yok!\n\n```python\nfrom basitapi.urlpatterns import format_suffix_patterns\nfrom appname.views import ViewName\n\nurlpatterns = patterns(\n url(r'^foo', ViewName.as_view()),\n ...\n)\n\nurlpatterns = format_suffix_patterns(urlpatterns)\n```\n\n### views.py\n\n```python\n\nfrom basitapi.exception import ApiException\nfrom basitapi.response import ApiResponse\nfrom basitapi.views import ApiView\n\nclass ViewName(ApiView):\n def get(self, request):\n return ApiResponse({\n 'result' : 'data'\n })\n\n def post(self, request):\n raise ApiException('Bir hata olustu', status=403, application_code=1111)\n```", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/omerucel/basitapi", "keywords": "rest,api,django", "license": "The MIT LICENCE", "maintainer": null, "maintainer_email": null, "name": "basitapi", "package_url": "https://pypi.org/project/basitapi/", "platform": "OS Independent", "project_url": "https://pypi.org/project/basitapi/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/omerucel/basitapi" }, "release_url": "https://pypi.org/project/basitapi/0.1.2/", "requires_dist": null, "requires_python": null, "summary": "UNKNOWN", "version": "0.1.2" }, "last_serial": 786727, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "ac1a3c173b9ddfe8108ecc66e1f0fff4", "sha256": "292b3ef39b2234ce9f3d3782d3d1518314bc2e4c76f661b5234e9c1d8e15ff05" }, "downloads": -1, "filename": "basitapi-0.1.tar.gz", "has_sig": false, "md5_digest": "ac1a3c173b9ddfe8108ecc66e1f0fff4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15481, "upload_time": "2013-01-17T14:47:04", "url": "https://files.pythonhosted.org/packages/b7/63/e2363fba488d43705e55c0f63aeae2f285960f167ab9e6822e83fc05b8eb/basitapi-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "58adba58c9a509adadb7f9c2102d7a9d", "sha256": "f2d449e56f432985bb9474be41b8258a5aa358ed7e15156e2cdc5c66dbf2e8b2" }, "downloads": -1, "filename": "basitapi-0.1.1.tar.gz", "has_sig": false, "md5_digest": "58adba58c9a509adadb7f9c2102d7a9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14455, "upload_time": "2013-04-24T21:35:53", "url": "https://files.pythonhosted.org/packages/e5/5b/7abadf44362f7103152f77714e766cdfa308673de11d41f5bcb437ba996c/basitapi-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "cb4fa8bd36b6046ba461b8aff3282c36", "sha256": "4d0bfaa04cdb9575caddc22c4ff573b30f293504396c2716b7f1502909df0c70" }, "downloads": -1, "filename": "basitapi-0.1.2.tar.gz", "has_sig": false, "md5_digest": "cb4fa8bd36b6046ba461b8aff3282c36", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15255, "upload_time": "2013-04-25T18:42:29", "url": "https://files.pythonhosted.org/packages/b0/d4/9b65e561bd8f6c1ced8798d06af7320988325253888d9cfaee0f5d9f66d6/basitapi-0.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cb4fa8bd36b6046ba461b8aff3282c36", "sha256": "4d0bfaa04cdb9575caddc22c4ff573b30f293504396c2716b7f1502909df0c70" }, "downloads": -1, "filename": "basitapi-0.1.2.tar.gz", "has_sig": false, "md5_digest": "cb4fa8bd36b6046ba461b8aff3282c36", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15255, "upload_time": "2013-04-25T18:42:29", "url": "https://files.pythonhosted.org/packages/b0/d4/9b65e561bd8f6c1ced8798d06af7320988325253888d9cfaee0f5d9f66d6/basitapi-0.1.2.tar.gz" } ] }