2012-03-03 13 views
1

私はコロナsdkでnetwork.requestを使用しています。私はURLの文字列を作成しますが、この文字列にスペース、スペイン語のacents、アラビア語のchar、japanese charなどがある場合...エラー(不良URL)。 どうすればこの問題を解決できますか?おかげさまで network.requestと非英語の文字

答えて

0

作成したURLから文字列、スペイン語の文字などを削除します。 URLはこれらの文字を持つことはできません。

2

文字を削除するよりも、percent encodingを使用してURLをエスケープする方が効果的です。 Luaは8ビット文字列しかサポートしていないので、国際文字はUTF-8のようなものにエンコードされており、あなたのサーバーはそれをサポートしていると思います。次に、Programming in LuaからescapeまでのURLの次の機能を使用できます。

function escape (s) 
    s = string.gsub(s, "([&=+%c\128-\255])", function (c) 
     return string.format("%%%02X", string.byte(c)) 
     end) 
    s = string.gsub(s, " ", "+") 
    return s 
end 
print(escape("http://server/aáäbcčdďeé...")) 
--> http://server/a%C3%A1%C3%A4bc%C4%8Dd%C4%8Fe%C3%A9... 
関連する問題