Class: SLRequest

Inherits:
NSObject show all

Overview

The SLRequest object encapsulates the properties of an HTTP request, providing a convenient template for you to make requests. You send a request to a social networking service to perform some operation on behalf of the user or to retrieve user information.

Instance Attribute Summary (collapse)

Class Method Summary (collapse)

Instance Method Summary (collapse)

Methods inherited from NSObject

#!, #!=, #!~, #, #==, #===, #=~, #Rational, #__callee__, #__method__, #__send__, #__type__, `, alloc, allocWithZone:, #autoContentAccessingProxy, autoload, autoload?, autorelease_pool, #awakeAfterUsingCoder:, binding, block_given?, caller, cancelPreviousPerformRequestsWithTarget:, cancelPreviousPerformRequestsWithTarget:selector:object:, catch, class, classFallbacksForKeyedArchiver, #classForCoder, #classForKeyedArchiver, classForKeyedUnarchiver, #clone, conformsToProtocol:, #copy, copyWithZone:, #dealloc, #define_singleton_method, description, display, #doesNotRecognizeSelector:, #dup, #enum_for, #eql?, #equal?, #extend, fail, #finalize, format, #forwardInvocation:, #forwardingTargetForSelector:, framework, #freeze, #frozen?, getpass, gets, global_variables, #init, initialize, #initialize_clone, #initialize_copy, #initialize_dup, #inspect, instanceMethodForSelector:, instanceMethodSignatureForSelector:, #instance_eval, #instance_exec, #instance_of?, #instance_variable_defined?, #instance_variable_get, #instance_variable_set, #instance_variables, instancesRespondToSelector:, isSubclassOfClass:, #is_a?, iterator?, #kind_of?, lambda, load, load_bridge_support_file, load_plist, local_variables, loop, #method, #methodForSelector:, #methodSignatureForSelector:, #methods, #mutableCopy, mutableCopyWithZone:, new, #nil?, open, p, #performSelector:onThread:withObject:waitUntilDone:, #performSelector:onThread:withObject:waitUntilDone:modes:, #performSelector:withObject:afterDelay:, #performSelector:withObject:afterDelay:inModes:, #performSelectorInBackground:withObject:, #performSelectorOnMainThread:withObject:waitUntilDone:, #performSelectorOnMainThread:withObject:waitUntilDone:modes:, print, printf, #private_methods, proc, #protected_methods, #public_method, #public_methods, #public_send, putc, puts, raise, rand, readline, readlines, #replacementObjectForCoder:, #replacementObjectForKeyedArchiver:, require, resolveClassMethod:, resolveInstanceMethod:, #respond_to?, #respond_to_missing?, select, #send, setVersion:, #singleton_methods, sprintf, srand, superclass, #taint, #tainted?, #tap, test, throw, #to_plist, #to_s, trace_var, trap, #trust, #untaint, untrace_var, #untrust, #untrusted?, version

Constructor Details

This class inherits a constructor from NSObject

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class NSObject

Instance Attribute Details

- (ACAccount) account

Account information used to authenticate the request. The account is used to sign a request with OAuth1 services or to add an access token for OAuth2 services. By associating the account with the request, the necessary tokens are added automatically. The default value is nil.

Returns:

  • (ACAccount)

- (Hash) parameters (readonly)

The parameters for this request. (read-only) Use this property to look up the query parameters of the HTTP request that was set in requestForServiceType:requestMethod:URL:parameters:. Possible values are dependent on the target service and are documented by the service provider. For links to documentation for the supported services, see Table 1.

Returns:

- (SLRequestMethod) requestMethod (readonly)

The method to use for this request. (read-only) Use this property to look up the method of the HTTP request that was set in requestForServiceType:requestMethod:URL:parameters:. Possible values are described in “SLRequestMethod.”

Returns:

  • (SLRequestMethod)

- (NSURL) URL (readonly)

The destination URL for this request. (read-only) Use this property to look up the URL of the HTTP request that was set in requestForServiceType:requestMethod:URL:parameters:. Possible values are dependent on the target service and are documented by the service provider. For links to documentation for the supported services, see Table 1.

Returns:

Class Method Details

+ (SLRequest) requestForServiceType(serviceType, requestMethod:requestMethod, URL:url, parameters:parameters)

Initializes a newly created request object with the specified properties. Use this method to initialize an SLRequest. The value and formatting of each parameter is dependent on the target service.

Parameters:

  • serviceType (String)

    The social networking service type. For possible values, see “Service Type Constants.”

  • requestMethod (SLRequestMethod)

    The method to use for this HTTP request. For possible values, see “SLRequestMethod.”

  • url (NSURL)

    The destination URL for this HTTP request. The values and formatting for the URL are dependent on the target service and are documented by the service provider. For links to documentation for the supported services, see Table 1.

  • parameters (Hash)

    The parameters for this HTTP request. The values and formatting are dependent on the target service and are documented by the service provider. For links to documentation for the supported services, see Table 1.

Returns:

  • (SLRequest)

    The newly initialized request object.

Instance Method Details

- (Object) addMultipartData(data, withName:name, type:type, filename:filename)

Specifies a named multipart POST body for this request. Possible parameter values are dependent on the target service. This information, as well as guidance on when to use a multipart POST body, is documented by the service provider. For links to documentation for the supported services, see Table 1.

Parameters:

  • data (NSData)

    The data for the multipart POST body, such as an image or text.

  • name (String)

    The name of the multipart POST body. This is the name that a specific social service expects.

  • type (String)

    The type of the multipart POST body. This is the MIME content type of the multipart data.

  • filename (String)

    The filename of the attachment that you want to POST. Many social services require a filename in order to accept certain POST requests, such as uploading an image or video. If your multipart data does not require a filename, pass in nil.

Returns:

- (Object) performRequestWithHandler(handler)

Performs an asynchronous request and calls the specified handler when done.

Parameters:

  • handler (SLRequestHandler)

    The handler to call when the request is done. The parameters for this handler are described in SLRequestHandler. This handler is not guaranteed to be called on any particular thread and should not be nil.

Returns:

- (NSURLRequest) preparedURLRequest

Returns an authorized URL request that can be sent using an NSURLConnection object. Use this method to modify your request before sending. By setting the account correctly, this method will automatically add any necessary tokens.

Returns:

  • (NSURLRequest)

    An OAuth-compatible NSURLRequest object that allows an app to act on behalf of the user while keeping the user’s password private. The NSURLRequest is signed as OAuth1 by default, or OAuth2 by adding the appropriate token based on the user’s account.