2013-04-23 4 views
0

Привет Я использую urrlib2 для отправки некоторых данных и настраиваемых заголовков по ссылке. Я получаю 500 внутренних ошибок сервера. Я связался с сервисом, и они говорят, что данные (данные json) верны, но в моем коде на Python есть некоторая ошибка. Что я делаю не так ? Ниже приведен код.Как отправить данные и пользовательские заголовки с помощью urllib2

import urllib2,urllib 
import json 

PREPAYMENT_URL = "https://services.gharpay.in/rest/GharpayService/" 
PREPAYMENT_USERNAME = "somename" 
PREPAYMENT_PASSWORD = "somepass" 

data = { 
"customerDetails":{ 
       "address": "ads", 
       "contactNo": "9663924147", 
       "email": "[email protected]", 
       "firstName": "akash", 
       "lastName": "deshpande", 
       "prefix": "Mr." 
      }, 

"orderDetails" : { 
       "pincode": "411036", 
       "clientOrderID": "21234", 
       "deliveryDate": "13-10-2013", 
       "orderAmount": "123", 
       "clientComments": "please be carefull", 
       "paymentMode": "Cash", 
       "productDetails": { 
       "productID": "21334", 
       "productQuantity": "1", 
       "unitCost": "123", 
       "productDescription": "tshirt" 
       }, 
       "templateID": "" 
      }, 

} 

def create(request): 

    function = 'createOrder' 
    url = PREPAYMENT_URL 
    url = url+ function 
    headers= {'username':PREPAYMENT_USERNAME,'password':PREPAYMENT_PASSWORD,'Content-type':'application/json'} 
    data1 = urllib.urlencode(data) 
    req = urllib2.Request(url,data1,headers) 
    try: 
     contents = urllib2.urlopen(req).read() 
    except urllib2.HTTPError as e: 
     error_message = e.read() 
     print error_message # this error message is being printed. It is showing 500 error. 
+0

Я не вижу проблем с кодом запроса. Вы должны получить более подробную информацию на стороне сервера, чтобы узнать, что на самом деле не удается (на сервере!). –

+0

Ох ... спасибо. Для ответа –

ответ

1

Ваш код идеально подходит для одного-weensy крошечный подробно, за исключением:

Заголовок должен быть Content-Type, не Content-тип.

Возможно, попробуйте изменить этот заголовок и сообщить мне, если он будет работать!

+0

Извините, что не сработал .... славный улов, хотя –

+0

Если это не так, то я не знаю, что случилось. Код выглядит нормально. – 2013-04-23 15:28:27

Смежные вопросы