iOS network-afnetworking basic use, file download, upload

Source: Internet
Author: User
<span id="Label3"></p><p><p><span style="font-size: 14px;">Send a GET request</span></p></p><pre><span style="font-size: 14px;">-(<span style="color: #0000ff;"><span style="color: #0000ff;">void</span></span>)<span style="color: #0000ff;"><span style="color: #0000ff;">Get</span></span><span style="color: #000000;"><span style="color: #000000;">{ </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">1. Create a Session Manager</span></span>Afhttpsessionmanager *manager =<span style="color: #000000;"><span style="color: #000000;">[afhttpsessionmanager manager]; Nsdictionary</span></span>*DICTM =<span style="color: #000000;"><span style="color: #000000;"> @{ </span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">username</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">520it</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, </span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">pwd</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">520it</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, </span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">type</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">JSON</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;"> }; </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">2. Sending the request</span></span> <span style="color: #008000;"><span style="color: #008000;">/*</span></span><span style="color: #008000;"><span style="color: #008000;">first parameter: a part of the request path (nsstring) before:</span></span><span style="color: #008000; text-decoration: underline;"><span style="color: #008000; text-decoration: underline;">http://120.25.226.186</span></span><span style="color: #008000;"><span style="color: #008000;">: 32812/login?username=123&pwd=123&type=json protocol header + host address + interface name +?+ parameter 1& parameter 2 now:</span></span><span style="color: #008000; text-decoration: underline;"><span style="color: #008000; text-decoration: underline;">http://120.25.226.186</span></span><span style="color: #008000;"><span style="color: #008000;">: 32812/login protocol header + host address + interface name the second parameter: parameter, which passes the third argument in a dictionary: progress Progress pass nil fourth Parameter: callback after success success Task: Request Task Responseobject: response Body Task.response: response header information Fifth Parameter: callback task after failure failure: request task ER Ror: error Message</span></span><span style="color: #008000;"><span style="color: #008000;">*/</span></span><span style="color: #000000;"><span style="color: #000000;">[manager GET:</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Http://120.25.226.186:32812/login</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>PARAMETERS:DICTM progress:nil success:^ (nsurlsessiondatatask * _nonnull task,<span style="color: #0000ff;"><span style="color: #0000ff;">ID</span></span><span style="color: #000000;"><span style="color: #000000;">_nullable Responseobject) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">successful request---%@--%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>, Responseobject,[responseobject<span style="color: #0000ff;"><span style="color: #0000ff;">class</span></span><span style="color: #000000;"><span style="color: #000000;">]); } failure:</span></span>^ (nsurlsessiondatatask * _nullable task, Nserror *<span style="color: #000000;"><span style="color: #000000;">_nonnull Error) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Request failed----%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, error); }];}</span></span></span></pre><p><p><span style="font-size: 14px;">Send a POST request</span></p></p><pre><span style="font-size: 14px;">-(<span style="color: #0000ff;"><span style="color: #0000ff;">void</span></span><span style="color: #000000;"><span style="color: #000000;">) post{</span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">1. Create a Session Manager</span></span>Afhttpsessionmanager *manager =<span style="color: #000000;"><span style="color: #000000;">[afhttpsessionmanager manager]; Nsdictionary</span></span>*DICTM =<span style="color: #000000;"><span style="color: #000000;"> @{ </span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">username</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">520it</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, </span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">pwd</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">520</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, </span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">type</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">JSON</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;"> }; </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">2. Sending the request</span></span> <span style="color: #008000;"><span style="color: #008000;">/*</span></span><span style="color: #008000;"><span style="color: #008000;">first parameter: a part of the request path (nsstring) before:</span></span><span style="color: #008000; text-decoration: underline;"><span style="color: #008000; text-decoration: underline;">http://120.25.226.186</span></span><span style="color: #008000;"><span style="color: #008000;">: 32812/login?username=123&pwd=123&type=json protocol header + host address + interface name +?+ parameter 1& parameter 2 now:</span></span><span style="color: #008000; text-decoration: underline;"><span style="color: #008000; text-decoration: underline;">http://120.25.226.186</span></span><span style="color: #008000;"><span style="color: #008000;">: 32812/login protocol header + host address + interface name the second parameter: parameter, The third parameter is passed in a dictionary: progress Progress pass nil fourth parameter: success after successful callback Task: request T Ask Responseobject: response Body task.response: response header information Fifth Parameter: callback task after failure failure: request task error: error message</span></span><span style="color: #008000;"><span style="color: #008000;">*/</span></span><span style="color: #000000;"><span style="color: #000000;">[manager POST:</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Http://120.25.226.186:32812/login</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>PARAMETERS:DICTM progress:nil success:^ (nsurlsessiondatatask * _nonnull task,<span style="color: #0000ff;"><span style="color: #0000ff;">ID</span></span><span style="color: #000000;"><span style="color: #000000;">_nullable Responseobject) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">successful request---%@--%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>, Responseobject,[responseobject<span style="color: #0000ff;"><span style="color: #0000ff;">class</span></span><span style="color: #000000;"><span style="color: #000000;">]); } failure:</span></span>^ (nsurlsessiondatatask * _nullable task, Nserror *<span style="color: #000000;"><span style="color: #000000;">_nonnull Error) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Request failed----%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, error); }];}</span></span></span></pre><p><p><span style="font-size: 14px;">File download</span></p></p><pre><span style="font-size: 14px;"><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">1. Create a Session Manager</span></span>Afhttpsessionmanager *manager =<span style="color: #000000;"><span style="color: #000000;">[afhttpsessionmanager manager]; Nsurlrequest</span></span>*request = [nsurlrequest Requestwithurl:[nsurl urlwithstring:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Http://120.25.226.186:32812/resources/images/minion_01.png</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">]]; </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">2. Create a download task</span></span> <span style="color: #008000;"><span style="color: #008000;">/*</span></span><span style="color: #008000;"><span style="color: #008000;">first Parameter: Request object second Parameter: Progress progress callback downloadprogress.completedunitcount: the size that has been completed Downloadprogress.tot Alunitcount: Total File size third parameter: destination Auto-complete file cut operation return value: the file should be clipped to targetpath: temp path tmp nsurl respons E: Response header Fourth parameter: completionhandler Download complete callback filePath: true Path = = The return value of the third parameter error: wrong message</span></span><span style="color: #008000;"><span style="color: #008000;">*/</span></span><span style="color: #000000;"><span style="color: #000000;">Nsurlsessiondownloadtask</span></span>*downlaodtask = [manager downloadtaskwithrequest:request progress:^ (nsprogress *<span style="color: #000000;"><span style="color: #000000;">_nonnull Downloadprogress) { </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">Calculate the download progress of a file</span></span>NSLog (<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">%f</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>,<span style="color: #800080;"><span style="color: #800080;">1.0</span></span>* downloadprogress.completedunitcount/<span style="color: #000000;"><span style="color: #000000;">downloadprogress.totalunitcount); } destination:</span></span>^nsurl * _nonnull (nsurl * _nonnull targetpath, Nsurlresponse *<span style="color: #000000;"><span style="color: #000000;">_nonnull Response) { </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">full path of the file</span></span>NSString *fullpath =<span style="color: #000000;"><span style="color: #000000;">[[nssearchpathfordirectoriesindomains (nscachesdirectory, nsuserdomainmask, YES) lastobject] stringByAppendingPathComponent:response.suggestedFilename]; Nsurl</span></span>*fileurl =<span style="color: #000000;"><span style="color: #000000;">[nsurl fileurlwithpath:fullpath]; NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">%@\n%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, targetpath,fullpath); </span></span><span style="color: #0000ff;"><span style="color: #0000ff;">return</span></span><span style="color: #000000;"><span style="color: #000000;">fileUrl; } completionhandler:</span></span>^ (nsurlresponse * _nonnull response, nsurl * _nullable filePath, Nserror *<span style="color: #000000;"><span style="color: #000000;">_nullable Error) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, filePath); }]; </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">3. Execute Task</span></span>[downlaodtask resume];</span></pre><p><p><span style="font-size: 14px;">File Upload</span></p></p><pre><span style="font-size: 14px;">-(<span style="color: #0000ff;"><span style="color: #0000ff;">void</span></span><span style="color: #000000;"><span style="color: #000000;">) uplaod{</span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">1. Create a Session Manager</span></span>Afhttpsessionmanager *manager =<span style="color: #000000;"><span style="color: #000000;">[afhttpsessionmanager manager]; Nsdictionary</span></span>*DICTM =<span style="color: #000000;"><span style="color: #000000;"> @{ </span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">username</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">123</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;"> }; </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">2. Uploading Files</span></span> <span style="color: #008000;"><span style="color: #008000;">/*</span></span><span style="color: #008000;"><span style="color: #008000;">first Parameter: request path second parameter: Non-file parameter, pass the third parameter in the Dictionary: constructingbodywithblock stitching data File parameter fourth Parameter: progress progress callback Fifth Parameter: success successful callback sixth Parameter: failure failure callback</span></span><span style="color: #008000;"><span style="color: #008000;">*/</span></span><span style="color: #000000;"><span style="color: #000000;">[manager POST:</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Http://120.25.226.186:32812/upload</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>PARAMETERS:DICTM constructingbodywithblock:^ (<span style="color: #0000ff;"><span style="color: #0000ff;">ID</span></span><AFMultipartFormData><span style="color: #000000;"><span style="color: #000000;">_nonnull FormData) {UIImage</span></span>*image = [UIImage imagenamed:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">snip20160118_860</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">]; NSData</span></span>*imagedata =<span style="color: #000000;"><span style="color: #000000;">uiimagepngrepresentation (image); </span></span><span style="color: #008000;"><span style="color: #008000;">/*</span></span><span style="color: #008000;"><span style="color: #008000;">first Parameter: binary data of the file to be uploaded the second parameter: the parameter name is specified here as file third Parameter: the saved name the fourth Parameter: data type of the MimeType file </span></span><span style="color: #008000;"><span style="color: #008000;">*/</span></span><span style="color: #000000;"><span style="color: #000000;">[formData appendpartwithfiledata:imagedata name:</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">file</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>FileName:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">12345.png</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>MimeType:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Image/png</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">]; } progress:</span></span>^ (nsprogress *<span style="color: #000000;"><span style="color: #000000;">_nonnull Uploadprogress) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">%f</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>,<span style="color: #800080;"><span style="color: #800080;">1.0</span></span>*uploadprogress.completedunitcount/<span style="color: #000000;"><span style="color: #000000;">uploadprogress.totalunitcount); } success:</span></span>^ (nsurlsessiondatatask * _nonnull task,<span style="color: #0000ff;"><span style="color: #0000ff;">ID</span></span><span style="color: #000000;"><span style="color: #000000;">_nullable Responseobject) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">successful request---%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, responseobject); } failure:</span></span>^ (nsurlsessiondatatask * _nullable task, Nserror *<span style="color: #000000;"><span style="color: #000000;">_nonnull Error) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Request failed---%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, error); }];}</span></span></span></pre><pre><span style="font-size: 14px;">-(<span style="color: #0000ff;"><span style="color: #0000ff;">void</span></span><span style="color: #000000;"><span style="color: #000000;">) uplaod2{</span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">1. Create a Session Manager</span></span>Afhttpsessionmanager *manager =<span style="color: #000000;"><span style="color: #000000;">[afhttpsessionmanager manager]; Nsdictionary</span></span>*DICTM =<span style="color: #000000;"><span style="color: #000000;"> @{ </span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">username</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">123</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;"> }; </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">2. Uploading Files</span></span> <span style="color: #008000;"><span style="color: #008000;">/*</span></span><span style="color: #008000;"><span style="color: #008000;">first Parameter: request path second parameter: Non-file parameter, pass the third parameter in the Dictionary: constructingbodywithblock stitching data File parameter fourth Parameter: progress progress Callback first Five Parameters: success successful callback sixth Parameter: failure failure callback</span></span><span style="color: #008000;"><span style="color: #008000;">*/</span></span><span style="color: #000000;"><span style="color: #000000;">[manager POST:</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Http://120.25.226.186:32812/upload</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>PARAMETERS:DICTM constructingbodywithblock:^ (<span style="color: #0000ff;"><span style="color: #0000ff;">ID</span></span><AFMultipartFormData><span style="color: #000000;"><span style="color: #000000;">_nonnull FormData) {nsurl</span></span>*fileurl = [nsurl Fileurlwithpath:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">/users/xiaomage/desktop/snip20160118_860.png</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">]; </span></span><span style="color: #008000;"><span style="color: #008000;">/*</span></span><span style="color: #008000;"><span style="color: #008000;">first parameter: The URL path of the file the second parameter: the parameter name is specified here as the third Parameter: saved name the fourth Parameter: data type of the MimeType file </span></span><span style="color: #008000;"><span style="color: #008000;">*/</span></span> <span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">[formData appendpartwithfileurl:fileurl name:@ "file" filename:@ "1.png" mimetype:@ "image/png" error:nil]; </span></span><span style="color: #008000;"><span style="color: #008000;">//</span></span><span style="color: #008000;"><span style="color: #008000;">a handy way to use Snip20160118_860.png as a file name</span></span>[formData Appendpartwithfileurl:fileurl name:<span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">file</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">error:nil]; } progress:</span></span>^ (nsprogress *<span style="color: #000000;"><span style="color: #000000;">_nonnull Uploadprogress) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">%f</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span>,<span style="color: #800080;"><span style="color: #800080;">1.0</span></span>*uploadprogress.completedunitcount/<span style="color: #000000;"><span style="color: #000000;">uploadprogress.totalunitcount); } success:</span></span>^ (nsurlsessiondatatask * _nonnull task,<span style="color: #0000ff;"><span style="color: #0000ff;">ID</span></span><span style="color: #000000;"><span style="color: #000000;">_nullable Responseobject) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">successful request---%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, responseobject); } failure:</span></span>^ (nsurlsessiondatatask * _nullable task, Nserror *<span style="color: #000000;"><span style="color: #000000;">_nonnull Error) {NSLog (</span></span><span style="color: #800000;"><span style="color: #800000;">@"</span></span><span style="color: #800000;"><span style="color: #800000;">Request failed---%@</span></span><span style="color: #800000;"><span style="color: #800000;">"</span></span><span style="color: #000000;"><span style="color: #000000;">, error); }];}</span></span></span></pre><p><p></p></p><p><p>iOS network-afnetworking basic use, file download, upload</p></p></span>

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.