2

I am using Vimeo API in my iOS application. But since few days it has stopped working, It gives me error while I am trying to upload any videos.

Following is the way, I am creating the request

    NSURL *uploadURL = [NSURL URLWithString:endpoint];
        OAMutableURLRequest *req = [[OAMutableURLRequest alloc] initWithURL:uploadURL consumer:self._oaconsumer token:self._authToken realm:nil signatureProvider:self._sigProv];
        [req setTimeoutInterval:60.0];
        [req setHTTPMethod:@"PUT"];
        [req setValue:[NSString stringWithFormat:@"%ld",(unsigned long)self._byteSizeOfVideo] forHTTPHeaderField:@"Content-Length"];
        [req setValue:@"video/quicktime" forHTTPHeaderField:@"Content-Type"];

and following error message i received,

Printing description of error:
Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: bad request (400)" UserInfo=0x1705bc80 {com.alamofire.serialization.response.error.response=<NSHTTPURLResponse: 0x15d1ff60> { URL: http://1511655313.cloud.vimeo.com/upload_multi?ticket_id=75225c91f65b14315902b8bee5fbbc44&amp;signature=6126962b362c9c0777bce88556211572 } { status code: 400, headers {
    "Access-Control-Allow-Origin" = "*";
    Connection = close;
    "Content-Length" = 28;
    "Content-Type" = "text/plain";
    Date = "Thu, 12 Feb 2015 15:46:12 GMT";
    Server = "Vimeo/1.0";
} }, NSErrorFailingURLKey=http://1511655313.cloud.vimeo.com/upload_multi?ticket_id=75225c91f65b14315902b8bee5fbbc44&amp;signature=6126962b362c9c0777bce88556211572, NSLocalizedDescription=Request failed: bad request (400), com.alamofire.serialization.response.error.data=<5369676e 61747572 65205661 6c696461 74696f6e 20666169 6c65640a>, NSUnderlyingError=0x15d237a0 "Request failed: unacceptable content-type: text/plain"}

Please do needful help.

Thank you !

4

1 回答 1

1

Finally I found the bug,

While fetching the ticket-id, I am getting the following response

<?xml version="1.0" encoding="UTF-8"?>
<rsp generated_in="0.0308" stat="ok">
  <ticket endpoint="http://1511635510.cloud.vimeo.com/upload_multi?ticket_id=090b9f68cce28467537cc6cc2d921c4d&amp;signature=a9362ca1ec4bc8e624ef1e5d274ccb6e" endpoint_secure="https://1511635510.cloud.vimeo.com/upload_multi?ticket_id=090b9f68cce28467537cc6cc2d921c4d&amp;signature=a9362ca1ec4bc8e624ef1e5d274ccb6e" host="1511635510.cloud.vimeo.com" id="090b9f68cce28467537cc6cc2d921c4d" max_file_size="5363328222"/>
</rsp>

Now here I am using enpoint url for uploading videos but in the endpoint url I found &amp; in place of & and It has wasted my lots of time.

于 2015-02-14T12:16:36.667 回答