Featured post

c# - Usage of Server Side Controls in MVC Frame work -

i using asp.net 4.0 , mvc 2.0 web application. project requiremrnt have use server side control in application not possibl in noraml case. ideally want use adrotator control , datalist control. i saw few samples , references in codepleax mvc controllib howwver found less useful. can tell how utilize theese controls in asp.net application along mvc. note: please provide functionalities related adrotator , datalist controls not equivalent functionalities thanks in advace. mvc pages not use normal .net solution makes use of normal .net components impossible. a normal .net page use event driven solution call different methods service side mvc use actions , view completly different way handle things. also, mvc not use viewstate normal .net controlls require. found article discussing mixing of normal .net , mvc.

python - uploading file using urllib2 -


i'm new python , i'm writing code upload file using urllib2 can't make work.

here's code:

class get(object):     handlers = list()     def __init__(self,url):         self.url = url         self.request = urllib2.request(url)         self.request.add_header('user-agent',"mozilla/5.0 (x11; u; linux i686; en-us; rv:1.9.2.13) gecko/20101203 firefox/3.6.13")      def auth(self,username,password):         pass_mgr = urllib2.httppasswordmgrwithdefaultrealm()         pass_mgr.add_password(none, self.url, username, password)         handler = urllib2.httpbasicauthhandler(pass_mgr)         self._add_handler(handler)      def perform(self):         try:             opener = self._opener()             res = opener.open(self.request)             to_return = {                 'code': res.code,                 'contents': res.read(),                 'url': res.geturl(),                 'headers': dict(res.info())             }         except urllib2.urlerror e:             if hasattr(e, 'reason'):                 print 'error accessing server.'                 print 'reason: ', e.reason             elif hasattr(e, 'code'):                 print 'the server couldn\'t fulfill request.'                 print e         else:             return to_return      def _add_handler(self,handler):         self.handlers.append(handler)      def _opener(self):         return urllib2.build_opener(*self.handlers)  class multipart(object):     def __init__(self,url):         super(multipart,self).__init__(url)         self.data = list()      def perform(self):         b = choose_boundary()          tmp = "".join(map(lambda x: "--%s \r\n %s" % (b,x), self.data ))          tmp += "--%s--\r\n" % b         self.request.add_data(tmp)         content_type = 'multipart/form-data; boundary=%s' % b         self.request.add_unredirected_header('content-type', content_type)         #self.request.add_header("content-type","multipart/form-data, boundary=%s" % b)         return super(http.multipart,self).perform()      def set_data(self,data,file = none):         in data:             if file:                 self.data.append(self._encode_file(i,**data[i]))             else:                 self.data.append(self._encode_text(i,data[i]))      def _encode_text(self,key,value):         return "content-disposition: form-data; name=\"%s\"\r\n\r\n%s\r\n" % (key, value)      def _encode_file(self,key,path,filename=none,mime_type=none):         if not exists(path):             raise runtimeerror('%s not found' % path)          fname = filename or basename(path)         mime = mime_type or guess_type(path)[0] or 'application/octet-stream'         size = getsize(path)         content = ""         open(path,'rb') fobj:             content = fobj.read(size)          converted_text = "content-disposition: form-data; name=\"%s\";     filename=\"%s\"\r\n" % (key,fname)         converted_text += "content-transfer-encoding: binary\r\n"         converted_text += "content-type: %s \r\n" % mime         converted_text += "content-length: %s \r\n" % size         converted_text += "\r\n %s \r\n" % content          return converted_text 

thanks multipartposthandler working fine now.

class post(get): # inherits class above     def __init__(self,url,data,multipart=false):         super(http.post,self).__init__(url)         if multipart:             multipartposthandler import multipartposthandler             self._add_handler(multipartposthandler)             self.request.add_data(data)         else:             self.request.add_data(urlencode(data)) 

Comments

Popular posts from this blog

c# - Usage of Server Side Controls in MVC Frame work -

cocoa - Nesting arrays into NSDictionary object (Objective-C) -

ios - Very simple iPhone App crashes on UILabel settext -