我需要使用 Phonegap 创建 android 应用程序。Phonegap 拍照,保存(使用默认相机应用程序),我想将该图像发送到 images.google.com 以获得“按图像搜索”答案(它可以在安装在 android 上的默认浏览器中 - phonegap 可以自行关闭并打开浏览器)。
现在,如果你在浏览器中拖放,你会自动得到这个,但是有人知道如何从 javascript 中得到相同的结果吗?
我放弃了使用任何类型的 api 并尝试使用 POST。这是html代码:
<form action="http://images.google.com/searchbyimage/upload" method="post" enctype="multipart/form-data">
<input type="hidden" name="image_url" id="image_url" />
<input type="hidden" name="btnG" id="btnG" value="Search" />
<input type="file" name="encoded_image" id="encoded_image" value="C:\xampp\htdocs\test\bundy.bmp" />
<input type="hidden" name="image_content" id="image_content" />
<input type="hidden" name="filename" id="filename" />
<input type="hidden" name="hl" id="hl" value="en" />
<input type="hidden" name="bih" id="bih" value="507" />
<input type="hidden" name="biw" id="biw" value="biw" />
<input type="submit" name="submit" value="Submit" />
</form>
现在:如果用户自己选择一张图片并点击上传,效果很好,但出于安全原因,只有用户可以这样做。我最初的想法是通过js在表单中设置一个默认值(输入类型=“文件”...),并自动提交它,但我不能从js/html方面触摸这个。
有谁知道如何解决这个问题?
编辑:我有这个想法而不是“文件”,我使用 type="text" 并将图像读取放入使用 fopen (或类似的东西 - 我现在在 localhost 上尝试 php,因为它更容易测试)。至今没有成功。有什么线索吗?
EDIT2:另一个想法是直接转到https://www.google.com/search并在 base64 中发送图像,但我没有谷歌指纹(他们生成的原因之一可能是因为他们不想成为像那样“被黑”:D)
提前感谢您的帮助。