서버에 JSON을 게시하려고하지만 코드가 작동하지 않습니다. 내가 Actionscripts 3 JSON을 게시하는 몇 가지 예제를 발견하지만 코드에서 콘텐츠 형식을 정의해야합니다. 나는 여기에 내 테스트 코드를 게시한다.Actionscripts 3 콘텐츠 헤더가있는 POST JSON
나는 firefox RESTClient에서 url + header + body를 테스트하여 작동합니다. [1] 나는 확실히 URL이 사실과 다른 곳에서 작업하지만, 여기있어 내가 오류 "오류 여는 URL"
URL있어 [[] 여기에 이미지 설명을 입력 [1]!] "https://api.thinger.io/v2/users/ *** "
내용 헤더 :"응용 프로그램/JSON "
바디 : {"에서 "진정한}
import flash.display.Sprite;
import flash.events.*;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.net.URLRequestHeader;
import flash.net.URLRequestMethod;
import flash.net.URLVariables;
var loader: URLLoader;
function ATN() {
loader = new URLLoader();
configureListeners(loader);
var header: URLRequestHeader = new URLRequestHeader("Accept", "application/json");
var request: URLRequest = new URLRequest("https://api.thinger.io/v2/users/***");
request.data = new URLVariables("in:true");
request.method = URLRequestMethod.POST;
request.requestHeaders.push(header);
try {
loader.load(request);
} catch (error: Error) {
trace("Unable to load requested document.");
}
}
function configureListeners(dispatcher: IEventDispatcher): void {
dispatcher.addEventListener(Event.COMPLETE, completeHandler);
dispatcher.addEventListener(Event.OPEN, openHandler);
dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
}
function completeHandler(event: Event): void {
var loader: URLLoader = URLLoader(event.target);
trace("completeHandler: " + loader.data);
}
function openHandler(event: Event): void {
trace("openHandler: " + event);
}
function progressHandler(event: ProgressEvent): void {
trace("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
}
function securityErrorHandler(event: SecurityErrorEvent): void {
trace("securityErrorHandler: " + event);
}
function httpStatusHandler(event: HTTPStatusEvent): void {
trace("httpStatusHandler: " + event);
}
function ioErrorHandler(event: IOErrorEvent): void {
trace("ioErrorHandler: " + event);
}
ATN();
ERROR :
ERR 또는 : 오류 # 2101 : URLVariables.decode()에 전달 된 문자열은 이름/값 쌍이 포함 된 URL 인코딩 쿼리 문자열이어야합니다. 오류 $/인 throwError() flash.net::URLVariables/decode()에서
에서
ATN_fla :: MainTimeline/ATN에서 flash.net::URLVariables()
에서
() ATN_fla에서
:: MainTimeline/프레임 1()
편집 :
,721,303,210OUTPUT : openHandler : progressHandler로드 [= 2 이벤트 TYPE = "열기"거품 = 거짓 거짓 = 캔슬의 EventPhase] : 44 총 44
EDIT 2
function ATN() {
loader = new URLLoader();
configureListeners(loader);
var header: URLRequestHeader = new URLRequestHeader("Accept", "application/json");
var request: URLRequest = new URLRequest("https://api.thinger.io/v2/users/***");
var postData: Object = {"in": true};
request.data = JSON.stringify(postData);
request.method = URLRequestMethod.POST;
request.requestHeaders.push(header);
try {
loader.load(request);
} catch (error: Error) {
trace("Unable to load requested document.");
}
}
OUTPUT 2 :
openHandler : 이벤트 타입 = "열기"거품 = 거짓 거짓 = 캔슬의 EventPhase = 2] progressHandler로드 44 총 44
오류 URL 'https://api.thinger.io/v2/users/ ***
httpStatusHandler 이벤트 개폐 : [이 HTTPStatusEvent TYPE = "httpStatus"거품 = 거짓 캔슬 = 거짓의 EventPhase = 상태 2 = 400 리디렉션 = 거짓 responseURL = NULL]
ioErrorHandler : 의해 IOErrorEvent을 type = "ioError"bubbles = false cancelable = false eventPhase = 2 text = "오류 # 2032 : 스트림 오류입니다. URL : https://api.thinger.io/v2/users/ *** "]
'그 오류 # 2032 :. 스트림 오류 URL : https://api.thinger.io/v2/users/***'tells 당신의 URL을 찾을 수 없다는 (URL 존재하지 않음) (2) ** https : //api.thinger.io/**는 유효한 URL입니까?_ "404 Not Found"_가 표시되어 어떻게 v2와 users 같은 폴더를 만들 수 있습니까? –
URL이 정상적으로 작동합니다. firefox RESTClient에서 테스트했습니다. 여기에 URL의 일부를 제거했습니다. –
JASON 데이터가 변경되었으며 이전 오류가 사라졌습니다. 이제 새로운 오류가 나타납니다. –