Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
E ae galera, blz ?
To com um pequeno problema ao tentar postar uma imagem pelo navegador. Testando pelo flash a imagem é postada de boa, mas quando eu tento fazer isto pelo navegador nada acontece. Estou usando o método draw() para fazer isso.
É o seguinte, eu tenho a seguinte implementação pra criar a imagem:
var bm:BitmapData = new BitmapData(600,600);
bm.draw(img) // Onde IMG é o movie clip que eu quero postar para o servidor.
Quando eu rodo direto do flash, esse
draw()
é executado. Mas quando eu embedo o flash no HTML e rodo no servidor, ele não executa.
Eu até tentei imprimir as informações no console, mas quando chega no draw() ele não roda mais nada. E não da nenhum erro.
Se o seu código for apenas o que postou ele está incompleto...
Aqui vai um exemplo:
var bmd:BitmapData = new BitmapData( 600, 600 );
bmd.draw( img );
var meu_bm:Bitmap = new Bitmap( bmd );
addChild( meu_bm );
[]'sEu não entendi pq você criou um novo bitmap(meu_bm) depois que um novo bitmap(bmd) já tinha sido criado.
Posso adicionar addChild(bmd)? Ou realmente preciso criar um novo bitmap?
---
EDIT
Segue a função que executa esta ação:
try {
// create a copy of the image
var jpgSource:BitmapData = new BitmapData( 600, 600 );
jpgSource.draw(image);
// encode it to jpeg and convert it to byte array
var jpgEncoder:JPGEncoder = new JPGEncoder(85);
var jpgStream:ByteArray = jpgEncoder.encode(jpgSource);
var request:URLRequest = new URLRequest("http://localhost/app-calypso-fm/flash/post.php?facebookID="+participante.facebook.id);
request.requestHeaders.push(new URLRequestHeader("Content-type", "application/octet-stream"));
request.method = URLRequestMethod.POST;
request.data = jpgStream;
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.addEventListener(flash.events.HTTPStatusEvent.HTTP_STATUS, function(e:HTTPStatusEvent){
trace(e.status);
}, false, 0, true);
loader.addEventListener(Event.COMPLETE, function(e:Event){
trace( new String(loader.data));
}, false, 0, true);
loader.load(request);
}Man, esquece o penúltimo post...
Vendo o seu código, agora sim, entendi o que você deseja fazer... ¬¬
Se o seu código está funcionando no flash, mas não no navegador, o problema está na configuração de publicação:
Publish Sentings ~> Local playback security
Ali você deve mudar o acesso para rede, já que você está testando via http://localhost...
[]'s
E quando eu colocar no ambiente de produção, eu devo colocar a URL do servidor?
E quando eu colocar no ambiente de produção, eu devo colocar a URL do servidor?
Sim, claro.
Cara, fiz a alteração mas mesmo assim não deu certo :/
Alguma outra sugestão ?
Provavelmente o problema pode estar na sua estrutura de pastas... veja bem, pra resumir e evitar mais postagens desnecessárias, ponha o caminho relativo para a pagina.php que salva a imagem no servidor...
Provavelmente o problema pode estar na sua estrutura de pastas... veja bem, pra resumir e evitar mais postagens desnecessárias, ponha o caminho relativo para a pagina.php que salva a imagem no servidor...
Isso foi a primeira coisa que eu fiz quando eu comecei a ter problemas :/
Testando pelo flash a imagem é postada de boa, mas quando eu tento fazer isto pelo navegador nada acontece.
Se você fez a configuração que falei e alterou a url absoluta para url relativa, não tem como dar errado... Ainda acho que o problema está na sua estrutura de pasta. Mas tudo bem.
Para que eu possa te ajudar a partir daqui é preciso que você post um link para que eu possa acessar e fazer uns testes.
[]'s
Posso pedir uma ajuda? Me explica isso direito, tem como?
Em especial esse trecho "Testando pelo flash a imagem é postada de boa, mas quando eu tento fazer isto pelo navegador nada acontece. Estou usando o método draw()" :upset: