iOS 업로드 파일(사진)의 AFNetworking 3.0 업로드 파일 업로드 이미지
iOS 업로드 파일(사진)의 AFNetworking 3.0 업로드 파일 업로드 이미지
본인은 최근에 프로필 사진을 올리는 기능을 해서 iOS에서 사진을 올리는 자료를 많이 찾아서 특별히 정리했습니다. 여러분에게 도움이 되었으면 좋겠습니다!
NSString *charset = (__bridge NSString *)CFStringConvertEncodingToIANACharSetName(CFStringConvertNSStringEncodingToEncoding(NSUTF8StringEncoding));
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; charset=%@; boundary=%@",charset,kBoundary];
// multipart/form-data; boundary=---------------------------10114516222134344949368718355
[request setValue:contentType forHTTPHeaderField:@"Content-Type"];
request.HTTPBody = [self getHttpBody];
[request setValue:[NSString stringWithFormat:@"%lu", (unsigned long) [[self getHttpBody] length]] forHTTPHeaderField:@"Content-Length"];
//
AFHTTPSessionManager *sessionManager = [self manager];
//JSON
AFHTTPRequestSerializer *serializer = [AFJSONRequestSerializer serializer];
[sessionManager POST:url parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData) {
//
UIImage *image = [UIImage imageWithContentsOfFile:@"/Users/wangfei/Desktop/100.jpg"];
NSData *imageData = UIImageJPEGRepresentation(image, 1);
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyyMMddHHmmss";
NSString *str = [formatter stringFromDate:[NSDate date]];
NSString *fileName = [NSString stringWithFormat:@"%@.jpg", str];
[formData appendPartWithFileData:imageData name:@"image" fileName:fileName mimeType:@"image/jpg"];
} progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
NSLog(@",,,,,,");
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
NSLog(@"%@",error);
}];
다른 것을 쓰는 것은 너무 번거롭습니다. 여러분은 이afn을 사용할 수 있어서 매우 편리합니다.
단축키
Ctrl + B
Ctrl + I
Ctrl + Q
Ctrl + L
Ctrl + K
Ctrl + G
Ctrl + H
Ctrl + O
Ctrl + U
.가로선
Ctrl + R
Ctrl + Z
Ctrl + Y
Markdown 및 확장
Markdown은 읽기 쉽고 쓰기 쉬운 일반 텍스트 형식으로 문서를 작성하고 서식이 풍부한 HTML 페이지로 변환할 수 있는 경량급 태그 언어입니다.[위키피디아]
간단한 기호를 사용하여 서로 다른 제목을 식별하고 일부 문자를 굵거나 기울임꼴로 표시하며 링크를 만드는 등 상세한 문법 참조 도움말을 사용합니다.
이 편집기는 Markdown Extra를 지원하여 유용한 기능을 많이 확장했습니다.구체적으로 Github을 참고하세요.
양식
Markdown Extra 표 구문:
프로젝트
가격
Computer
$1600
Phone
$12
Pipe
$1
콜론을 사용하여 정렬을 정의할 수 있습니다.
프로젝트
가격
수량
Computer
1600원
오
Phone
12원
십이
Pipe
1원
234
목록 정의
Markdown Extra 정의 목록 구문:
프로젝트 1
프로젝트 2
정의 A
정의 B
프로젝트 3
정의C
정의 D
D 컨텐트 정의
코드 블록
코드 블록 구문은 표준 markdown 코드를 따릅니다. 예를 들어 다음과 같습니다.
@requires_authorization
def somefunc(param1='', param2=0):
'''A docstring'''
if param1 > param2: # interesting
print 'Greater'
return (param2 - param1 + 1) or None
class SomeClass:
pass
>>> message = '''interpreter ... prompt'''
각주
각주 생성하기 1.
카탈로그
수납장
[TOC]
디렉터리 생성:수학 공식
MathJax를 사용하여 LaTex 수학 공식을 렌더링합니다. 자세한 내용은 math 를 참조하십시오.stackexchange.com.
x=−b±b2−4ac‾‾‾‾‾‾‾‾‾√2a
더 많은 LaTex 문법은 여기를 참고하십시오.
UML 그림:
순서도를 렌더링할 수 있습니다.
Created with Rapha ël 2.1.0장 세 장이사는 멍하니 서서 피를 토할 정도로 바쁜데 쓸 시간이 어디 있겠느냐고 말했다.
또는 흐름도:
Created with Rapha ël 2.1.0 내 작업 확인 시작?종료 yes no
오프라인으로 블로그를 쓰다
사용자가 네트워크가 없는 경우에도 이 편집기를 통해 오프라인으로 블로그를 쓸 수 있습니다. (사용한 브라우저에서 write.blog.csdn.net/mdeditor를 직접 입력하면 됩니다. Markdown 편집기는 브라우저를 사용하여 오프라인으로 저장하여 내용을 로컬에 저장합니다.
사용자가 블로그를 작성하는 동안 컨텐트는 브라우저 캐시에 실시간으로 저장되며 사용자가 브라우저를 닫거나 다른 예외 상황에서는 컨텐트를 잃어버리지 않습니다.사용자가 브라우저를 다시 열면 마지막으로 편집하고 있는 발표되지 않은 내용이 표시됩니다.
블로그가 발표되면 로컬 캐시가 삭제됩니다.
사용자는 브라우저를 바꾸거나 캐시를 지워도 내용을 잃어버리지 않고 쓰고 있는 블로그를 서버 초고함에 저장할 수 있습니다.
주의: 브라우저 저장은 대부분 신뢰할 수 있지만 데이터 안전을 위해 네트워크가 연결된 후에는 반드시 제때에 발표하거나 서버 초고함에 저장하십시오.
브라우저 호환
여기는 각주 내용입니다.↩
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swift의 패스트 패스Objective-C를 대체하기 위해 만들어졌지만 Xcode는 Objective-C 런타임 라이브러리를 사용하기 때문에 Swift와 함께 C, C++ 및 Objective-C를 컴파일할 수 있습니다. Xcode는 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.