UNKNOWN
Project description
# BasitApi [![Build Status](https://travis-ci.org/omerucel/basitapi.png)](https://travis-ci.org/omerucel/basitapi)
RESTful API oluşturmanızda size yardımcı olan basit bir kütüphane. Django'nun
sınıf temelli View yapısı üzerine kurulu. Bir RESTful API'de olması gereken
bazı temel özellikleri sunar ve başka da bir işe karışmaz.
Sunduğu bazı temel özellikler:
* *Bağlantıdaki method parametresi ile HTTP_METHOD başlığının ezilmesi.*
Bazı istemciler sadece bazı metodları göndermekle kısıtlandırılabilirler. Bu
türlü bir durumda API'nin doğru çalışabilmesi için bağlantı içinde *method*
isimli parametreyi kullanabilirsiniz. Bu parametre ile HTTP_METHOD ezilir ve
gönderdiğiniz method parametresindeki değere göre işlemler yürütülür.
* *Her zaman 200 HTTP kodu ile dönüş.*
Bazı istemciler sadece bazı hata kodlarına yanıt verebilirler. BasitApi bu tür durumlar için
*suppress_response_codes* parametresine destek vermekte. Bu parametre değeri
1 olarak gönderildiğinde durumu ne olursa olsun tüm yanıtlar 200 kodu ile
gönderilmekte.
* *Yanıt formatı.*
Hem *Accept* başlık bilgisine hem de bağlantı dosya son ekine göre yanıt
formatı ayarlanabilmekte.
## Kurulum
PyPi üzerinden kurulum için aşağıdaki komutu kullanabilirsiniz:
```
$ pip install basitapi
```
Github üzerinden kurulum için aşağıdaki komutu kullanabilirsiniz:
```
$ pip install -e git://github.com/omerucel/basitapi.git#egg=basitapi
```
## Kullanım
### settings.py
```python
INSTALLED_APPS=(
...
'basitapi'
)
```
### urls.py
Bağlantı dosya son ekine göre yanıt formatını ayarlamak istemiyorsanız
bağlantılarınızı *format_suffix_patterns* ile tekrar formatlamanıza gerek yok!
```python
from basitapi.urlpatterns import format_suffix_patterns
from appname.views import ViewName
urlpatterns = patterns(
url(r'^foo', ViewName.as_view()),
...
)
urlpatterns = format_suffix_patterns(urlpatterns)
```
### views.py
```python
from basitapi.exception import ApiException
from basitapi.response import ApiResponse
from basitapi.views import ApiView
class ViewName(ApiView):
def get(self, request):
return ApiResponse({
'result' : 'data'
})
def post(self, request):
raise ApiException('Bir hata olustu', status=403, application_code=1111)
```
RESTful API oluşturmanızda size yardımcı olan basit bir kütüphane. Django'nun
sınıf temelli View yapısı üzerine kurulu. Bir RESTful API'de olması gereken
bazı temel özellikleri sunar ve başka da bir işe karışmaz.
Sunduğu bazı temel özellikler:
* *Bağlantıdaki method parametresi ile HTTP_METHOD başlığının ezilmesi.*
Bazı istemciler sadece bazı metodları göndermekle kısıtlandırılabilirler. Bu
türlü bir durumda API'nin doğru çalışabilmesi için bağlantı içinde *method*
isimli parametreyi kullanabilirsiniz. Bu parametre ile HTTP_METHOD ezilir ve
gönderdiğiniz method parametresindeki değere göre işlemler yürütülür.
* *Her zaman 200 HTTP kodu ile dönüş.*
Bazı istemciler sadece bazı hata kodlarına yanıt verebilirler. BasitApi bu tür durumlar için
*suppress_response_codes* parametresine destek vermekte. Bu parametre değeri
1 olarak gönderildiğinde durumu ne olursa olsun tüm yanıtlar 200 kodu ile
gönderilmekte.
* *Yanıt formatı.*
Hem *Accept* başlık bilgisine hem de bağlantı dosya son ekine göre yanıt
formatı ayarlanabilmekte.
## Kurulum
PyPi üzerinden kurulum için aşağıdaki komutu kullanabilirsiniz:
```
$ pip install basitapi
```
Github üzerinden kurulum için aşağıdaki komutu kullanabilirsiniz:
```
$ pip install -e git://github.com/omerucel/basitapi.git#egg=basitapi
```
## Kullanım
### settings.py
```python
INSTALLED_APPS=(
...
'basitapi'
)
```
### urls.py
Bağlantı dosya son ekine göre yanıt formatını ayarlamak istemiyorsanız
bağlantılarınızı *format_suffix_patterns* ile tekrar formatlamanıza gerek yok!
```python
from basitapi.urlpatterns import format_suffix_patterns
from appname.views import ViewName
urlpatterns = patterns(
url(r'^foo', ViewName.as_view()),
...
)
urlpatterns = format_suffix_patterns(urlpatterns)
```
### views.py
```python
from basitapi.exception import ApiException
from basitapi.response import ApiResponse
from basitapi.views import ApiView
class ViewName(ApiView):
def get(self, request):
return ApiResponse({
'result' : 'data'
})
def post(self, request):
raise ApiException('Bir hata olustu', status=403, application_code=1111)
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
basitapi-0.1.2.tar.gz
(15.3 kB
view details)
File details
Details for the file basitapi-0.1.2.tar.gz
.
File metadata
- Download URL: basitapi-0.1.2.tar.gz
- Upload date:
- Size: 15.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d0bfaa04cdb9575caddc22c4ff573b30f293504396c2716b7f1502909df0c70 |
|
MD5 | cb4fa8bd36b6046ba461b8aff3282c36 |
|
BLAKE2b-256 | b0d49b65e561bd8f6c1ced8798d06af7320988325253888d9cfaee0f5d9f66d6 |