c# - Why when trying to upload a video file to youtube i'm getting InvalidCredentialsException? -


this code in form1:

using system; using system.collections.generic; using system.componentmodel; using system.data; using system.drawing; using system.linq; using system.text; using system.windows.forms; using system.io; using google.gdata.client; using google.gdata.extensions; using google.gdata.youtube; using google.gdata.extensions.mediarss; using google.youtube;   namespace youtube_manager {     public partial class form1 : form     {          youtuberequestsettings settings;         youtuberequest request;          string username = "myusername", password = "mypass", devkey = "mydevkey";         string filename, filetype, filemime;          public string devkey         {             { return devkey; }             set { devkey = value; }         }          public string password         {             { return password; }             set { password = value; }         }          public string username         {             { return username; }             set { username = value; }         }          public form1()         {             initializecomponent();         }          private void form1_load(object sender, eventargs e)         {             devkey = devkey;             password = password;             username = username;             settings = new youtuberequestsettings("youtube_manager", devkey, username, password);             request = new youtuberequest(settings);             if (cmbcat.items.count > 0)             {                 cmbcat.selectedindex = 0;             }             if (cmbprivacy.items.count > 0)             {                 cmbprivacy.selectedindex = 0;             }         }           public void uploadvideo()         {             video video = new video();             video.title = txttitle.text;             video.tags.add(new mediacategory(cmbcat.selecteditem.tostring(), youtubenametable.categoryschema));             video.keywords = txtkeywords.text;             if (cmbprivacy.selectedindex == 1)                 video.private = true;             else                 video.private = false;             getfilemime();             video.mediasource = new mediafilesource(filename, filemime);             request.upload(video);             messagebox.show("successfully uploaded");         }          public void getfilemime()         {             switch (filetype)             {                 case "flv": filemime = "video/x-flv"; break;                 case "avi": filemime = "video/avi"; break;                 case "3gp": filemime = "video/3gpp"; break;                 case "mov": filemime = "video/quicktime"; break;                 default: filemime = "video/quicktime"; break;             }         }          private void btnchoosefile_click(object sender, eventargs e)         {             string tmp;             choosefile.showdialog();             tmp = choosefile.filename;             txtfilepath.text = tmp;             string[] title = tmp.split('\\');             int = title.getupperbound(0);             string temp = title[i];             string[] title1 = temp.split('.');             txttitle.text = title1[0];             filename = tmp.replace("\\", "\\\\");             filetype = title1[1];         }          private void button1_click(object sender, eventargs e)         {             dialogresult result = messagebox.show("by clicking 'upload,' " +             "you certify own rights content or authorized" +             "by owner make content publicly available on youtube, , otherwise" +             "complies youtube terms of service located @ http://www.youtube.com/t/terms", "aggrement",             messageboxbuttons.yesno, messageboxicon.question);              if (result == dialogresult.yes)             {                 uploadvideo();             }         }          private void button2_click(object sender, eventargs e)         {             this.close();         }     } } 

the exception on line:

request.upload(video); 

in google development site created application called youtube uploader. , key i'm using in c# app client id ending with: apps.googleusercontent.com

but i'm not sure right key. user name i'm using gmail email use log in youtube. , password.

in code cmbcat , cmbprivacy comboboxes.

this exception message:

google.gdata.client.invalidcredentialsexception unhandled   hresult=-2146233088   message=invalid credentials   source=google.gdata.client   stacktrace:        @ google.gdata.client.utilities.queryclientlogintoken(gdatacredentials gc, string servicename, string applicationname, boolean fusekeepalive, iwebproxy proxyserver, uri clientloginhandler)        @ google.gdata.client.gdatagauthrequest.queryauthtoken(gdatacredentials gc)        @ google.gdata.client.gdatagauthrequest.ensurecredentials()        @ google.gdata.client.gdatarequest.ensurewebrequest()        @ google.gdata.client.gdatagauthrequest.ensurewebrequest()        @ google.gdata.client.gdatagauthrequest.copyrequestdata()        @ google.gdata.client.gdatagauthrequest.execute(int32 retrycounter)        @ google.gdata.client.gdatagauthrequest.execute()        @ google.gdata.client.mediaservice.entrysend(uri feeduri, atombase baseentry, gdatarequesttype type, asyncsenddata data)        @ google.gdata.client.service.insert(uri feeduri, atomentry newentry, asyncsenddata data)        @ google.gdata.client.service.insert[tentry](uri feeduri, tentry entry)        @ google.gdata.youtube.youtubeservice.upload(string username, youtubeentry entry)        @ google.youtube.youtuberequest.upload(string username, video v)        @ google.youtube.youtuberequest.upload(video v)        @ youtube_manager.form1.uploadvideo() in d:\c-sharp\youtube_manager\youtube_manager\youtube_manager\form1.cs:line 81        @ youtube_manager.form1.button1_click(object sender, eventargs e) in d:\c-sharp\youtube_manager\youtube_manager\youtube_manager\form1.cs:line 122        @ system.windows.forms.control.onclick(eventargs e)        @ system.windows.forms.button.onclick(eventargs e)        @ system.windows.forms.button.onmouseup(mouseeventargs mevent)        @ system.windows.forms.control.wmmouseup(message& m, mousebuttons button, int32 clicks)        @ system.windows.forms.control.wndproc(message& m)        @ system.windows.forms.buttonbase.wndproc(message& m)        @ system.windows.forms.button.wndproc(message& m)        @ system.windows.forms.control.controlnativewindow.onmessage(message& m)        @ system.windows.forms.control.controlnativewindow.wndproc(message& m)        @ system.windows.forms.nativewindow.debuggablecallback(intptr hwnd, int32 msg, intptr wparam, intptr lparam)        @ system.windows.forms.unsafenativemethods.dispatchmessagew(msg& msg)        @ system.windows.forms.application.componentmanager.system.windows.forms.unsafenativemethods.imsocomponentmanager.fpushmessageloop(intptr dwcomponentid, int32 reason, int32 pvloopdata)        @ system.windows.forms.application.threadcontext.runmessageloopinner(int32 reason, applicationcontext context)        @ system.windows.forms.application.threadcontext.runmessageloop(int32 reason, applicationcontext context)        @ system.windows.forms.application.run(form mainform)        @ youtube_manager.program.main() in d:\c-sharp\youtube_manager\youtube_manager\youtube_manager\program.cs:line 18        @ system.appdomain._nexecuteassembly(runtimeassembly assembly, string[] args)        @ system.appdomain.executeassembly(string assemblyfile, evidence assemblysecurity, string[] args)        @ microsoft.visualstudio.hostingprocess.hostproc.runusersassembly()        @ system.threading.threadhelper.threadstart_context(object state)        @ system.threading.executioncontext.runinternal(executioncontext executioncontext, contextcallback callback, object state, boolean preservesyncctx)        @ system.threading.executioncontext.run(executioncontext executioncontext, contextcallback callback, object state, boolean preservesyncctx)        @ system.threading.executioncontext.run(executioncontext executioncontext, contextcallback callback, object state)        @ system.threading.threadhelper.threadstart()   innerexception: 

clientlogin (login , password) deprecated of april 20, 2012 , turned off on may 26 2015. code not longer work need switch using oauth2.

i recomed use new google client library

install-package google.apis.youtube.v3


Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -